66 lines
2.3 KiB
Java
66 lines
2.3 KiB
Java
package net.crystalyx.bukkit.simplyperms.imports;
|
|
|
|
import java.util.Map.Entry;
|
|
|
|
import org.bukkit.configuration.file.YamlConfiguration;
|
|
|
|
import net.crystalyx.bukkit.simplyperms.SimplyAPI;
|
|
import net.crystalyx.bukkit.simplyperms.SimplyPlugin;
|
|
|
|
public class ImportPermBukkit extends SimplyAPI implements ImportManager {
|
|
|
|
private SimplyPlugin plugin;
|
|
private YamlConfiguration permBukkit;
|
|
|
|
public ImportPermBukkit(SimplyPlugin plugin) {
|
|
super(plugin);
|
|
this.plugin = plugin;
|
|
this.permBukkit = new YamlConfiguration();
|
|
permBukkit.options().pathSeparator('/');
|
|
}
|
|
|
|
@Override
|
|
public void run() throws Exception {
|
|
try {
|
|
permBukkit.load("plugins/PermissionsBukkit/config.yml");
|
|
plugin.getConfig().set("debug", permBukkit.getBoolean("debug"));
|
|
addMessage("build", permBukkit.getString("messages/build"));
|
|
|
|
for (String player : getKeys(permBukkit, "users")) {
|
|
for (String group : permBukkit.getStringList("users/" + player + "/groups")) {
|
|
addPlayerGroup(player, group);
|
|
}
|
|
|
|
for (Entry<String, Object> perm : permBukkit.getConfigurationSection("users/" + player + "/permissions").getValues(false).entrySet()) {
|
|
addPlayerPermission(player, perm.getKey(), (Boolean) perm.getValue());
|
|
}
|
|
|
|
for (String world : getKeys(permBukkit, "users/" + player + "/worlds")) {
|
|
for (Entry<String, Object> worldperm : permBukkit.getConfigurationSection("users/" + player + "/worlds/" + world).getValues(false).entrySet()) {
|
|
addPlayerPermission(player, world, worldperm.getKey(), (Boolean) worldperm.getValue());
|
|
}
|
|
}
|
|
}
|
|
|
|
for (String group : getKeys(permBukkit, "groups")) {
|
|
for (Entry<String, Object> perms : permBukkit.getConfigurationSection("groups/" + group + "/permissions").getValues(false).entrySet()) {
|
|
addGroupPermission(group, perms.getKey(), (Boolean) perms.getValue());
|
|
}
|
|
|
|
for (String world : getKeys(permBukkit, "groups/" + group + "/worlds")) {
|
|
for (Entry<String, Object> worldperm : permBukkit.getConfigurationSection("groups/" + group + "/worlds/" + world).getValues(false).entrySet()) {
|
|
addGroupPermission(group, world, worldperm.getKey(), (Boolean) worldperm.getValue());
|
|
}
|
|
}
|
|
|
|
for (String inherit : plugin.getConfig().getStringList("groups/" + group + "/inheritance")) {
|
|
addGroupInheritance(group, inherit);
|
|
}
|
|
}
|
|
} catch (Exception e) {
|
|
throw e;
|
|
}
|
|
}
|
|
|
|
}
|