Backup & replace the repair config files that have been updated.

This commit is contained in:
GJ 2013-10-07 13:04:36 -04:00
parent 8632baed27
commit d5545de81f
2 changed files with 18 additions and 4 deletions

View File

@ -11,7 +11,7 @@ import com.gmail.nossr50.mcMMO;
public abstract class ConfigLoader {
protected static final mcMMO plugin = mcMMO.p;
protected String fileName;
private File configFile;
protected File configFile;
protected FileConfiguration config;
public ConfigLoader(String relativePath, String fileName) {

View File

@ -1,5 +1,6 @@
package com.gmail.nossr50.skills.repair.config;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
@ -33,9 +34,7 @@ public class RepairConfig extends ConfigLoader {
for (String key : keys) {
if (config.contains("Repairables." + key + ".ItemId")) {
plugin.getLogger().warning("You are using an old version of the " + fileName + " file.");
plugin.getLogger().warning("You should delete your current file and allow a new one to generate.");
plugin.getLogger().warning("Repair will not work properly until you do.");
backup();
return;
}
@ -162,4 +161,19 @@ public class RepairConfig extends ConfigLoader {
return issues.isEmpty();
}
private void backup() {
plugin.getLogger().warning("You are using an old version of the " + fileName + " file.");
plugin.getLogger().warning("Your old file has been renamed to " + fileName + ".old and has been replaced by an updated version.");
configFile.renameTo(new File(configFile.getPath() + ".old"));
if (plugin.getResource(fileName) != null) {
plugin.saveResource(fileName, true);
}
plugin.getLogger().warning("Reloading " + fileName + " with new values...");
loadFile();
loadKeys();
}
}