Skip to content

Commit 95e2ff8

Browse files
committed
Add constructor with custom properties for MySQLDatabase
1 parent 7b17623 commit 95e2ff8

File tree

3 files changed

+10
-3
lines changed

3 files changed

+10
-3
lines changed

src/main/java/me/hteppl/data/database/MySQLDatabase.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ public MySQLDatabase(String host, int port, String database, String user, String
1414
super(Create.createMySQL(host, port, database, user, password));
1515
}
1616

17+
public MySQLDatabase(String host, int port, String database, String user, String password, String properties) {
18+
super(Create.createMySQL(host, port, database, user, password, properties));
19+
}
20+
1721
public MySQLDatabase(DataSource ds) {
1822
super(Create.createByDataSource(ds));
1923
}

src/main/java/me/hteppl/data/utils/Create.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@ public static Jdbi createSQLite(String folder, String database) {
3232
}
3333

3434
public static Jdbi createMySQL(String host, int port, String database, String user, String password) {
35+
return createMySQL(host, port, database, user, password, null);
36+
}
37+
38+
public static Jdbi createMySQL(String host, int port, String database, String user, String password, String properties) {
3539
try {
3640
Class.forName("org.mariadb.jdbc.Driver");
3741
} catch (ClassNotFoundException ex) {
@@ -43,8 +47,7 @@ public static Jdbi createMySQL(String host, int port, String database, String us
4347
var hikari = settings.getHikari();
4448
var config = new HikariConfig();
4549

46-
String properties = settings.getMysqlProperties();
47-
properties = properties != null && !properties.trim().isEmpty() ? "?" + properties : "";
50+
properties = properties != null && !properties.trim().isEmpty() ? "?" + properties : settings.getMysqlProperties();
4851

4952
config.setJdbcUrl("jdbc:mariadb://" + host + ":" + port + "/" + database + properties);
5053
config.setUsername(user);

src/main/java/me/hteppl/data/utils/Settings.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class Settings {
1414
public Settings(Config config, String pluginPath) {
1515
String dir = config.getString("sqlite-directory", "database");
1616
this.sqliteDirectory = dir.trim().isEmpty() ? pluginPath : dir;
17-
this.mysqlProperties = config.getString("mysql-properties");
17+
this.mysqlProperties = config.getString("mysql-properties", "");
1818
this.hikari = new HikariSettings(config.getSection("hikari"));
1919
}
2020

0 commit comments

Comments
 (0)