Saber-Factions/src/org/mcteam/factions/commands/FCommandReload.java

77 lines
2.2 KiB
Java
Raw Normal View History

2011-05-10 19:18:35 +02:00
package org.mcteam.factions.commands;
import org.bukkit.command.CommandSender;
import org.mcteam.factions.Board;
import org.mcteam.factions.Conf;
import org.mcteam.factions.FPlayer;
import org.mcteam.factions.Faction;
import org.mcteam.factions.Factions;
public class FCommandReload extends FBaseCommand {
public FCommandReload() {
aliases.add("reload");
senderMustBePlayer = false;
optionalParameters.add("file");
helpDescription = "reloads all json files, or a specific one";
2011-05-10 19:18:35 +02:00
}
@Override
public boolean hasPermission(CommandSender sender) {
return Factions.hasPermReload(sender);
}
@Override
2011-05-10 19:18:35 +02:00
public void perform() {
Factions.log("=== RELOAD START ===");
long timeInitStart = System.currentTimeMillis();
String fileName = "s";
2011-05-10 19:18:35 +02:00
// Was a single file specified?
if (parameters.size() > 0) {
String file = parameters.get(0);
if (file.equalsIgnoreCase("conf") || file.equalsIgnoreCase("conf.json")) {
Factions.log("RELOADING CONF.JSON");
Conf.load();
fileName = " conf.json";
}
else if (file.equalsIgnoreCase("board") || file.equalsIgnoreCase("board.json")) {
Factions.log("RELOADING BOARD.JSON");
Board.load();
fileName = " board.json";
}
else if (file.equalsIgnoreCase("factions") || file.equalsIgnoreCase("factions.json")) {
Factions.log("RELOADING FACTIONS.JSON");
Faction.load();
fileName = " factions.json";
}
else if (file.equalsIgnoreCase("players") || file.equalsIgnoreCase("players.json")) {
Factions.log("RELOADING PLAYERS.JSON");
FPlayer.load();
fileName = " players.json";
}
else {
Factions.log("RELOAD CANCELLED - SPECIFIED FILE INVALID");
sendMessage("Invalid file specified. Valid files: conf, board, factions, players.");
return;
}
}
else {
Factions.log("RELOADING ALL FILES");
Conf.load();
FPlayer.load();
Faction.load();
Board.load();
}
2011-05-10 19:18:35 +02:00
long timeReload = (System.currentTimeMillis()-timeInitStart);
Factions.log("=== RELOAD DONE (Took "+timeReload+"ms) ===");
sendMessage("Factions file" + fileName + " reloaded from disk, took " + timeReload + "ms");
2011-05-10 19:18:35 +02:00
}
}