Skip to content

Commit df23a50

Browse files
committed
[Sponge] 修复配置加载报错问题
1 parent 99b7fe6 commit df23a50

File tree

2 files changed

+47
-45
lines changed

2 files changed

+47
-45
lines changed

MiraiMC-Base/src/main/resources/config.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ general:
1313
mirai.no-desktop: true
1414
mirai.slider.captcha.supported: true
1515
mirai-core-version: "latest"
16-
maven-repo-url: "http://maven.aliyun.com/nexus/content/groups/public/"
16+
maven-repo-url: "https://maven.aliyun.com/nexus/content/groups/public/"
1717
friendly-exception: true
1818
bot:
1919
disable-network-logs: false

MiraiMC-Sponge/src/main/java/me/dreamvoid/miraimc/sponge/SpongeConfig.java

+46-44
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.io.IOException;
88
import java.io.InputStream;
99
import java.nio.file.Files;
10+
import java.util.HashMap;
1011
import java.util.Map;
1112
import java.util.Objects;
1213

@@ -35,50 +36,51 @@ public void loadConfig() throws IOException {
3536
InputStream inputStream = new FileInputStream(file);
3637
Map<String, Object> obj = (Map<String, Object>) yaml.load(inputStream);
3738

38-
Map<String, Object> general = (Map<String, Object>) obj.get("general");
39-
Gen_AllowBStats = (Boolean) general.get("allow-bStats");
40-
Gen_DisableSafeWarningMessage = (Boolean) general.get("disable-safe-warning-message");
41-
Gen_MiraiWorkingDir = String.valueOf(general.get("mirai-working-dir"));
42-
43-
Map<String, Object> addProperties = (Map<String, Object>) general.get("add-properties");
44-
Gen_AddProperties_MiraiNoDesktop = (Boolean) addProperties.get("mirai.no-desktop");
45-
Gen_AddProperties_MiraiSliderCaptchaSupported = (Boolean) addProperties.get("mirai.slider.captcha.supported");
46-
47-
Gen_MiraiCoreVersion = String.valueOf(general.get("mirai-core-version"));
48-
Gen_MavenRepoUrl = String.valueOf(general.get("maven-repo-url"));
49-
Gen_FriendlyException = (Boolean) general.get("friendly-exception");
50-
51-
Map<String, Object> bot = (Map<String, Object>) obj.get("bot");
52-
Bot_DisableNetworkLogs = (Boolean) bot.get("disable-network-logs");
53-
Bot_DisableBotLogs = (Boolean) bot.get("disable-bot-logs");
54-
55-
Map<String, Object> useBukkitLogger = (Map<String, Object>) bot.get("use-bukkit-logger");
56-
Bot_UseBukkitLogger_BotLogs = (Boolean) useBukkitLogger.get("bot-logs");
57-
Bot_UseBukkitLogger_NetworkLogs = (Boolean) useBukkitLogger.get("network-logs");
58-
59-
Bot_LogEvents = (Boolean) bot.get("log-events");
60-
61-
Map<String, Object> contactCache = (Map<String, Object>) bot.get("contact-cache");
62-
Bot_ContactCache_EnableFriendListCache = (Boolean) contactCache.get("enable-friend-list-cache");
63-
Bot_ContactCache_EnableGroupMemberListCache = (Boolean) contactCache.get("enable-group-member-list-cache");
64-
Bot_ContactCache_SaveIntervalMillis = Long.parseLong(String.valueOf(contactCache.get("save-interval-millis")));
65-
66-
Map<String, Object> database = (Map<String, Object>) obj.get("database");
67-
DB_Type = String.valueOf(database.get("type")).toLowerCase();
68-
69-
Map<String, Object> mysql = (Map<String, Object>) database.get("mysql");
70-
DB_MySQL_Address = String.valueOf(mysql.get("address"));
71-
DB_MySQL_Username = String.valueOf(mysql.get("username"));
72-
DB_MySQL_Password = String.valueOf(mysql.get("password"));
73-
DB_MySQL_Database = String.valueOf(mysql.get("database"));
74-
75-
Map<String, Object> pool = (Map<String, Object>) mysql.get("pool");
76-
DB_MySQL_Poll_ConnectionTimeout = (Integer) pool.get("connectionTimeout");
77-
DB_MySQL_Poll_IdleTimeout = (Integer) pool.get("connectionTimeout");
78-
DB_MySQL_Poll_MaxLifetime = (Integer) pool.get("maxLifetime");
79-
DB_MySQL_Poll_MaximumPoolSize = (Integer) pool.get("maximumPoolSize");
80-
DB_MySQL_Poll_KeepaliveTime = (Integer) pool.get("keepaliveTime");
81-
DB_MySQL_Poll_MinimumIdle = (Integer) pool.get("minimumIdle");
39+
Map<String, Object> general = !Objects.isNull(obj.get("general")) ? (Map<String, Object>) obj.get("general") : new HashMap<>();
40+
Gen_AllowBStats = !Objects.isNull(general.get("allow-bStats")) ? (Boolean) general.get("allow-bStats") : false;
41+
Gen_CheckUpdate = !Objects.isNull(general.get("check-update")) ? (Boolean) general.get("check-update") : false;
42+
Gen_DisableSafeWarningMessage = !Objects.isNull(general.get("disable-safe-warning-message")) ? (Boolean) general.get("disable-safe-warning-message") : false;
43+
Gen_MiraiWorkingDir = !Objects.isNull(general.get("mirai-working-dir")) ? String.valueOf(general.get("mirai-working-dir")) : "default";
44+
45+
Map<String, Object> addProperties = !Objects.isNull(general.get("add-properties")) ? (Map<String, Object>) general.get("add-properties") : new HashMap<>();
46+
Gen_AddProperties_MiraiNoDesktop = !Objects.isNull(addProperties.get("mirai.no-desktop")) ? (Boolean) addProperties.get("mirai.no-desktop") : true;
47+
Gen_AddProperties_MiraiSliderCaptchaSupported = !Objects.isNull(addProperties.get("mirai.slider.captcha.supported")) ? (Boolean) addProperties.get("mirai.slider.captcha.supported") : true;
48+
49+
Gen_MiraiCoreVersion = !Objects.isNull(general.get("mirai-core-version")) ? String.valueOf(general.get("mirai-core-version")) : "latest";
50+
Gen_MavenRepoUrl = !Objects.isNull(general.get("maven-repo-url")) ? String.valueOf(general.get("maven-repo-url")) : "https://maven.aliyun.com/nexus/content/groups/public/";
51+
Gen_FriendlyException = !Objects.isNull(general.get("friendly-exception")) ? (Boolean) general.get("friendly-exception") : true;
52+
53+
Map<String, Object> bot = !Objects.isNull(obj.get("bot")) ? (Map<String, Object>) obj.get("bot") : new HashMap<>();
54+
Bot_DisableNetworkLogs = !Objects.isNull(bot.get("disable-network-logs")) ? (Boolean) bot.get("disable-network-logs") : false;
55+
Bot_DisableBotLogs = !Objects.isNull(bot.get("disable-bot-logs")) ? (Boolean) bot.get("disable-bot-logs") : false;
56+
57+
Map<String, Object> useBukkitLogger = !Objects.isNull(bot.get("use-bukkit-logger")) ? (Map<String, Object>) bot.get("use-bukkit-logger") : new HashMap<>();
58+
Bot_UseBukkitLogger_BotLogs = !Objects.isNull(useBukkitLogger.get("bot-logs")) ? (Boolean) useBukkitLogger.get("bot-logs") : true;
59+
Bot_UseBukkitLogger_NetworkLogs = !Objects.isNull(useBukkitLogger.get("network-logs")) ? (Boolean) useBukkitLogger.get("network-logs") : true;
60+
61+
Bot_LogEvents = !Objects.isNull(bot.get("log-events")) ? (Boolean) bot.get("log-events") : true;
62+
63+
Map<String, Object> contactCache = !Objects.isNull(bot.get("contact-cache")) ? (Map<String, Object>) bot.get("contact-cache") : new HashMap<>();
64+
Bot_ContactCache_EnableFriendListCache = !Objects.isNull(contactCache.get("enable-friend-list-cache")) ? (Boolean) contactCache.get("enable-friend-list-cache") : false;
65+
Bot_ContactCache_EnableGroupMemberListCache = !Objects.isNull(contactCache.get("enable-group-member-list-cache")) ? (Boolean) contactCache.get("enable-group-member-list-cache") : false;
66+
Bot_ContactCache_SaveIntervalMillis = !Objects.isNull(contactCache.get("save-interval-millis")) ? Long.parseLong(String.valueOf(contactCache.get("save-interval-millis"))) : 60000;
67+
68+
Map<String, Object> database = !Objects.isNull(obj.get("database")) ? (Map<String, Object>) obj.get("database") : new HashMap<>();
69+
DB_Type = !Objects.isNull(database.get("type")) ? String.valueOf(database.get("type")).toLowerCase() : "sqlite";
70+
71+
Map<String, Object> mysql = !Objects.isNull(database.get("mysql")) ? (Map<String, Object>) database.get("mysql") : new HashMap<>();
72+
DB_MySQL_Address = !Objects.isNull(mysql.get("address")) ? String.valueOf(mysql.get("address")) : "localhost";
73+
DB_MySQL_Username = !Objects.isNull(mysql.get("username")) ? String.valueOf(mysql.get("username")) : "miraimc";
74+
DB_MySQL_Password = !Objects.isNull(mysql.get("password")) ? String.valueOf(mysql.get("password")) : "miraimc";
75+
DB_MySQL_Database = !Objects.isNull(mysql.get("database")) ? String.valueOf(mysql.get("database")) : "miraimc";
76+
77+
Map<String, Object> pool = !Objects.isNull(mysql.get("pool")) ? (Map<String, Object>) mysql.get("pool") : new HashMap<>();
78+
DB_MySQL_Poll_ConnectionTimeout = !Objects.isNull(pool.get("connectionTimeout")) ? (Integer) pool.get("connectionTimeout") : 30000;
79+
DB_MySQL_Poll_IdleTimeout = !Objects.isNull(pool.get("connectionTimeout")) ? (Integer) pool.get("connectionTimeout") : 600000;
80+
DB_MySQL_Poll_MaxLifetime = !Objects.isNull(pool.get("maxLifetime")) ? (Integer) pool.get("maxLifetime") : 1800000;
81+
DB_MySQL_Poll_MaximumPoolSize = !Objects.isNull(pool.get("maximumPoolSize")) ? (Integer) pool.get("maximumPoolSize") : 15;
82+
DB_MySQL_Poll_KeepaliveTime = !Objects.isNull(pool.get("keepaliveTime")) ? (Integer) pool.get("keepaliveTime") : 0;
83+
DB_MySQL_Poll_MinimumIdle = !Objects.isNull(pool.get("minimumIdle")) ? (Integer) pool.get("minimumIdle") : 5;
8284
}
8385

8486
public static void reloadConfig() throws IOException{

0 commit comments

Comments
 (0)