From 921df872d14df240bb6252b0f0b81039963cd210 Mon Sep 17 00:00:00 2001 From: TheMolkaPL Date: Fri, 27 Sep 2019 02:17:54 +0200 Subject: [PATCH] Expose useSSL flag to config --- src/main/java/de/diddiz/LogBlock/LogBlock.java | 2 +- src/main/java/de/diddiz/LogBlock/config/Config.java | 3 +++ src/main/java/de/diddiz/util/MySQLConnectionPool.java | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/diddiz/LogBlock/LogBlock.java b/src/main/java/de/diddiz/LogBlock/LogBlock.java index 09185ef..91acee3 100644 --- a/src/main/java/de/diddiz/LogBlock/LogBlock.java +++ b/src/main/java/de/diddiz/LogBlock/LogBlock.java @@ -72,7 +72,7 @@ public class LogBlock extends JavaPlugin { } try { getLogger().info("Connecting to " + user + "@" + url + "..."); - pool = new MySQLConnectionPool(url, user, password, mysqlRequireSSL); + pool = new MySQLConnectionPool(url, user, password, mysqlUseSSL, mysqlRequireSSL); final Connection conn = getConnection(true); if (conn == null) { noDb = true; diff --git a/src/main/java/de/diddiz/LogBlock/config/Config.java b/src/main/java/de/diddiz/LogBlock/config/Config.java index e91a906..103f349 100644 --- a/src/main/java/de/diddiz/LogBlock/config/Config.java +++ b/src/main/java/de/diddiz/LogBlock/config/Config.java @@ -25,6 +25,7 @@ public class Config { private static LoggingEnabledMapping superWorldConfig; private static Map worldConfigs; public static String url, user, password; + public static boolean mysqlUseSSL; public static boolean mysqlRequireSSL; public static int delayBetweenRuns, forceToProcessAtLeast, timePerRun; public static boolean fireCustomEvents; @@ -82,6 +83,7 @@ public class Config { def.put("mysql.database", "minecraft"); def.put("mysql.user", "username"); def.put("mysql.password", "pass"); + def.put("mysql.useSSL", true); def.put("mysql.requireSSL", false); def.put("consumer.delayBetweenRuns", 2); def.put("consumer.forceToProcessAtLeast", 200); @@ -167,6 +169,7 @@ public class Config { url = "jdbc:mysql://" + config.getString("mysql.host") + ":" + config.getInt("mysql.port") + "/" + getStringIncludingInts(config, "mysql.database"); user = getStringIncludingInts(config, "mysql.user"); password = getStringIncludingInts(config, "mysql.password"); + mysqlUseSSL = config.getBoolean("mysql.useSSL", true); mysqlRequireSSL = config.getBoolean("mysql.requireSSL", false); delayBetweenRuns = config.getInt("consumer.delayBetweenRuns", 2); forceToProcessAtLeast = config.getInt("consumer.forceToProcessAtLeast", 0); diff --git a/src/main/java/de/diddiz/util/MySQLConnectionPool.java b/src/main/java/de/diddiz/util/MySQLConnectionPool.java index 1b3d871..b064d70 100644 --- a/src/main/java/de/diddiz/util/MySQLConnectionPool.java +++ b/src/main/java/de/diddiz/util/MySQLConnectionPool.java @@ -11,7 +11,7 @@ public class MySQLConnectionPool implements Closeable { private final HikariDataSource ds; - public MySQLConnectionPool(String url, String user, String password, boolean requireSSL) { + public MySQLConnectionPool(String url, String user, String password, boolean useSSL, boolean requireSSL) { this.ds = new HikariDataSource(); ds.setJdbcUrl(url); ds.setUsername(user); @@ -30,7 +30,7 @@ public class MySQLConnectionPool implements Closeable { ds.addDataSourceProperty("prepStmtCacheSqlLimit", "2048"); ds.addDataSourceProperty("useServerPrepStmts", "true"); - ds.addDataSourceProperty("useSSL", "true"); + ds.addDataSourceProperty("useSSL", Boolean.toString(useSSL)); ds.addDataSourceProperty("requireSSL", Boolean.toString(requireSSL)); ds.addDataSourceProperty("verifyServerCertificate", "false"); }