diff options
| author | Mattie <pugmatt@gmail.com> | 2024-08-06 03:25:18 -0400 |
|---|---|---|
| committer | Mattie <pugmatt@gmail.com> | 2024-08-06 03:25:18 -0400 |
| commit | be8cfc300222c567de9e3346548dba2a08506f9f (patch) | |
| tree | 08f0c42b89e08aa9890714cad4bb2af6efe3fd7f /serverlist-server/src | |
| parent | a8c7070f3734f34c3e5b1e6695d41d5e27a2d4d9 (diff) | |
| download | BedrockConnect-be8cfc300222c567de9e3346548dba2a08506f9f.tar.gz BedrockConnect-be8cfc300222c567de9e3346548dba2a08506f9f.tar.bz2 BedrockConnect-be8cfc300222c567de9e3346548dba2a08506f9f.zip | |
Couple of changes to db_ settings support1.48
Also adds in deprecation warnings
Diffstat (limited to 'serverlist-server/src')
3 files changed, 62 insertions, 23 deletions
diff --git a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java index cd1202b..30a08b2 100644 --- a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java +++ b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/BedrockConnect.java @@ -46,7 +46,7 @@ public class BedrockConnect { public static int globalPacketLimit = RakConstants.DEFAULT_GLOBAL_PACKET_LIMIT; - public static String release = "1.47"; + public static String release = "1.48"; public static HashMap<String, String> featuredServerIps; @@ -63,7 +63,7 @@ public class BedrockConnect { String password = ""; String port = "19132"; String bindIp = "0.0.0.0"; - DatabaseTypes databaseType = DatabaseTypes.nosql; + DatabaseTypes databaseType = DatabaseTypes.mysql; boolean autoReconnect = false; String serverLimit = "100"; @@ -104,6 +104,9 @@ public class BedrockConnect { } } catch(SecurityException e) {} + boolean nodbWarning = true; + boolean mysqlSettingWarning = false; + for (Map.Entry<String, String> setting : settings.entrySet()) { switch(setting.getKey().toLowerCase()) { case "db_host": @@ -118,6 +121,43 @@ public class BedrockConnect { case "db_pass": password = setting.getValue(); break; + case "db_type": + nodbWarning = false; + String dbType = setting.getValue().toLowerCase(); + switch(dbType) { + case "none": + databaseType = DatabaseTypes.nosql; + break; + case "mysql": + databaseType = DatabaseTypes.mysql; + break; + case "mariadb": + databaseType = DatabaseTypes.mariadb; + break; + case "postgres": + databaseType = DatabaseTypes.postgres; + break; + } + break; + // Backwards-compatibility for legacy database/mysql settings + // db_ settings above should be used for any future setups/database-related changes + case "mysql_host": + mysqlSettingWarning = true; + hostname = setting.getValue(); + break; + case "mysql_db": + mysqlSettingWarning = true; + database = setting.getValue(); + break; + case "mysql_user": + mysqlSettingWarning = true; + username = setting.getValue(); + break; + case "mysql_pass": + mysqlSettingWarning = true; + password = setting.getValue(); + break; + // case "server_limit": serverLimit = setting.getValue(); break; @@ -125,25 +165,12 @@ public class BedrockConnect { port = setting.getValue(); break; case "nodb": - //noDB = setting.getValue().equalsIgnoreCase("true"); if (setting.getValue().equalsIgnoreCase("true")) { + nodbWarning = false; databaseType = DatabaseTypes.nosql; - noDB = setting.getValue().equalsIgnoreCase("true"); + noDB = true; } - - break; - case "mysql": - if (setting.getValue().equalsIgnoreCase("true")) - databaseType = DatabaseTypes.mysql; - break; - case "mairadb": - if (setting.getValue().equalsIgnoreCase("true")) - databaseType = DatabaseTypes.mairadb; - break; - case "postgres": - if (setting.getValue().equalsIgnoreCase("true")) - databaseType = DatabaseTypes.postgres; break; case "custom_servers": customServers = setting.getValue(); @@ -241,10 +268,22 @@ public class BedrockConnect { } } - if(!noDB) - System.out.println("Database Host: " + hostname + "\n" + - "Database: " + database + "\n" + - "Database User: " + username); + + if(!noDB) { + if(nodbWarning || mysqlSettingWarning) { + System.out.println("----------------"); + System.out.println("[!!DEPRECATION!!] Your current database settings may not work in future versions\n"); + if(mysqlSettingWarning) + System.out.println("- mysql_* settings should be replaced with db_* settings"); + if(nodbWarning) + System.out.println("- db_type should be manually set to mysql"); + System.out.println("\nLearn more here: https://github.com/Pugmatt/BedrockConnect/wiki/Deprecated-Database-Settings"); + System.out.println("----------------"); + } + System.out.println("Database Host: " + hostname + "\n" + + "Database: " + database + "\n" + + "Database User: " + username); + } System.out.println("\nServer Limit: " + serverLimit + "\n" + "Port: " + port + "\n"); diff --git a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/DatabaseTypes.java b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/DatabaseTypes.java index 553c297..53fa144 100644 --- a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/DatabaseTypes.java +++ b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/DatabaseTypes.java @@ -3,6 +3,6 @@ package main.com.pyratron.pugmatt.bedrockconnect.sql; public enum DatabaseTypes { nosql, mysql, - mairadb, + mariadb, postgres, } diff --git a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/MySQL.java b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/MySQL.java index abcb2ff..a06aaba 100644 --- a/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/MySQL.java +++ b/serverlist-server/src/main/com/pyratron/pugmatt/bedrockconnect/sql/MySQL.java @@ -60,7 +60,7 @@ public class MySQL extends Database { Class.forName("com.mysql.cj.jdbc.Driver"); Driver = "jdbc:mysql://"; break; - case mairadb: + case mariadb: Class.forName("org.mariadb.jdbc.Driver"); Driver = "jdbc:mariadb://"; break; |
