mirror of
https://e.coding.net/circlecloud/YumCore.git
synced 2024-11-22 01:48:50 +00:00
fix: 修复配置块被更新的BUG
Signed-off-by: 502647092 <admin@yumc.pw>
This commit is contained in:
parent
b3c0a31cbf
commit
a27a8dc79e
@ -16,6 +16,7 @@ import org.apache.commons.lang.Validate;
|
|||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.configuration.InvalidConfigurationException;
|
import org.bukkit.configuration.InvalidConfigurationException;
|
||||||
|
import org.bukkit.configuration.MemorySection;
|
||||||
import org.bukkit.configuration.file.YamlConfiguration;
|
import org.bukkit.configuration.file.YamlConfiguration;
|
||||||
|
|
||||||
import pw.yumc.YumCore.bukkit.Log;
|
import pw.yumc.YumCore.bukkit.Log;
|
||||||
@ -45,6 +46,7 @@ public class FileConfig extends AbstractConfig {
|
|||||||
private static final String CONFIG_CREATE_ERROR = "配置: %s 创建失败...";
|
private static final String CONFIG_CREATE_ERROR = "配置: %s 创建失败...";
|
||||||
private static final String CONFIG_FORMAT_ERROR = "配置: %s 格式错误...";
|
private static final String CONFIG_FORMAT_ERROR = "配置: %s 格式错误...";
|
||||||
private static final String CONFIG_BACKUP_ERROR = "配置: %s 备份失败 异常: %s !";
|
private static final String CONFIG_BACKUP_ERROR = "配置: %s 备份失败 异常: %s !";
|
||||||
|
private static final String CONFIG_UPDATE_VALUE = "配置: 更新字段 %s 的值为 %s ...";
|
||||||
private static final String CONFIG_BACKUP_AND_RESET = "配置: %s 格式错误 已备份为 %s 并恢复默认配置!";
|
private static final String CONFIG_BACKUP_AND_RESET = "配置: %s 格式错误 已备份为 %s 并恢复默认配置!";
|
||||||
private static final String CONFIG_NOT_FOUND_IN_JAR = "配置: 从插件内部未找到预置的 %s 文件!";
|
private static final String CONFIG_NOT_FOUND_IN_JAR = "配置: 从插件内部未找到预置的 %s 文件!";
|
||||||
private static final String CONFIG_READ_COMMENT_ERROR = "配置: 读取文件注释信息失败!";
|
private static final String CONFIG_READ_COMMENT_ERROR = "配置: 读取文件注释信息失败!";
|
||||||
@ -559,17 +561,20 @@ public class FileConfig extends AbstractConfig {
|
|||||||
* @param oldcfg
|
* @param oldcfg
|
||||||
* 旧配置文件
|
* 旧配置文件
|
||||||
* @return 是否需要升级
|
* @return 是否需要升级
|
||||||
* @throws IOException
|
|
||||||
*/
|
*/
|
||||||
protected boolean needUpdate(final FileConfig newcfg, final FileConfig oldcfg) {
|
protected boolean needUpdate(final FileConfig newcfg, final FileConfig oldcfg) {
|
||||||
return needUpdate(newcfg.getString(VERSION), oldcfg.getString(VERSION));
|
return needUpdate(newcfg.getString(VERSION), oldcfg.getString(VERSION));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param newCfg
|
* 更新配置文件
|
||||||
* @param oldCfg
|
|
||||||
*
|
*
|
||||||
* @return
|
* @param newcfg
|
||||||
|
* 新配置文件
|
||||||
|
* @param oldcfg
|
||||||
|
* 旧配置文件
|
||||||
|
*
|
||||||
|
* @return 更新以后的配置文件
|
||||||
*/
|
*/
|
||||||
protected FileConfig updateConfig(final FileConfig newCfg, final FileConfig oldCfg) {
|
protected FileConfig updateConfig(final FileConfig newCfg, final FileConfig oldCfg) {
|
||||||
return updateConfig(newCfg, oldCfg, false);
|
return updateConfig(newCfg, oldCfg, false);
|
||||||
@ -601,7 +606,11 @@ public class FileConfig extends AbstractConfig {
|
|||||||
}
|
}
|
||||||
// 复制旧的数据
|
// 复制旧的数据
|
||||||
for (final String string : oldConfigKeys) {
|
for (final String string : oldConfigKeys) {
|
||||||
newCfg.set(string, oldCfg.get(string));
|
final Object var = oldCfg.get(string);
|
||||||
|
if (var != null && !(var instanceof MemorySection)) {
|
||||||
|
Log.debug(String.format(CONFIG_UPDATE_VALUE, string, var));
|
||||||
|
newCfg.set(string, var);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Log.info(String.format(CONFIG_UPDATED, filename, newver));
|
Log.info(String.format(CONFIG_UPDATED, filename, newver));
|
||||||
return newCfg;
|
return newCfg;
|
||||||
|
Loading…
Reference in New Issue
Block a user