From f6aa71e9fb03a1166e402a22237220de492e94f3 Mon Sep 17 00:00:00 2001 From: MagicBot Date: Mon, 22 May 2023 12:42:34 -0400 Subject: [PATCH] Refactor to remove abstraction. --- src/engine/db/handlers/dbRealmHandler.java | 47 ++++++++++----------- src/engine/db/handlers/dbResistHandler.java | 30 ++++++++----- src/engine/objects/Realm.java | 3 +- 3 files changed, 44 insertions(+), 36 deletions(-) diff --git a/src/engine/db/handlers/dbRealmHandler.java b/src/engine/db/handlers/dbRealmHandler.java index c11147c6..fd076505 100644 --- a/src/engine/db/handlers/dbRealmHandler.java +++ b/src/engine/db/handlers/dbRealmHandler.java @@ -9,14 +9,12 @@ package engine.db.handlers; +import engine.gameManager.DbManager; import engine.objects.Realm; import org.pmw.tinylog.Logger; -import java.net.UnknownHostException; -import java.sql.ResultSet; -import java.sql.SQLException; +import java.sql.*; import java.util.concurrent.ConcurrentHashMap; -import java.util.logging.Level; public class dbRealmHandler extends dbHandlerBase { @@ -32,42 +30,43 @@ public class dbRealmHandler extends dbHandlerBase { realmList = new ConcurrentHashMap<>(); int recordsRead = 0; - prepareCallable("SELECT * FROM obj_realm"); + try (Connection connection = DbManager.getConnection(); + PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM obj_realm")) { - try { - ResultSet rs = executeQuery(); + ResultSet rs = preparedStatement.executeQuery(); while (rs.next()) { - recordsRead++; thisRealm = new Realm(rs); realmList.put(thisRealm.getRealmID(), thisRealm); } - Logger.info("read: " + recordsRead + " cached: " + realmList.size()); - } catch (SQLException e) { - Logger.error(e.getErrorCode() + ' ' + e.getMessage(), e); - } catch (UnknownHostException ex) { - java.util.logging.Logger.getLogger(dbRealmHandler.class.getName()).log(Level.SEVERE, null, ex); - } finally { - closeCallable(); + Logger.error(e); } + + Logger.info("read: " + recordsRead + " cached: " + realmList.size()); return realmList; } public void REALM_UPDATE(Realm realm) { - prepareCallable("CALL realm_UPDATE(?,?,?,?)"); + try (Connection connection = DbManager.getConnection(); + PreparedStatement preparedStatement = connection.prepareStatement("CALL realm_UPDATE(?,?,?,?)")) { + + preparedStatement.setInt(1, realm.getRealmID()); + preparedStatement.setInt(2, (realm.getRulingCity() == null) ? 0 : realm.getRulingCity().getObjectUUID()); + preparedStatement.setInt(3, realm.getCharterType()); - setInt(1, realm.getRealmID()); - setInt(2, (realm.getRulingCity() == null) ? 0 : realm.getRulingCity().getObjectUUID()); - setInt(3, realm.getCharterType()); - if (realm.ruledSince != null) - setLocalDateTime(4, realm.ruledSince); - else - setNULL(4, java.sql.Types.DATE); + if (realm.ruledSince != null) + preparedStatement.setTimestamp(4, Timestamp.valueOf(realm.ruledSince)); + else + preparedStatement.setNull(4, java.sql.Types.DATE); - executeUpdate(); + preparedStatement.execute(); + + } catch (SQLException e) { + Logger.error(e); + } } } diff --git a/src/engine/db/handlers/dbResistHandler.java b/src/engine/db/handlers/dbResistHandler.java index 0eccf2e2..7557ba37 100644 --- a/src/engine/db/handlers/dbResistHandler.java +++ b/src/engine/db/handlers/dbResistHandler.java @@ -9,8 +9,12 @@ package engine.db.handlers; +import engine.gameManager.DbManager; import engine.objects.Resists; +import org.pmw.tinylog.Logger; +import java.sql.Connection; +import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; @@ -21,17 +25,23 @@ public class dbResistHandler extends dbHandlerBase { } public Resists GET_RESISTS_FOR_MOB(int resistID) { - prepareCallable("SELECT * FROM `static_npc_mob_resists` WHERE `ID` = ?;"); - setInt(1, resistID); - try { - ResultSet rs = executeQuery(); - if (rs.next()) { - return new Resists(rs); - } + + Resists resists = null; + + try (Connection connection = DbManager.getConnection(); + PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM `static_npc_mob_resists` WHERE `ID` = ?;")) { + + preparedStatement.setInt(1, resistID); + + ResultSet rs = preparedStatement.executeQuery(); + + if (rs.next()) + resists = new Resists(rs); + } catch (SQLException e) { - } finally { - closeCallable(); + Logger.error(e); } - return null; + + return resists; } } diff --git a/src/engine/objects/Realm.java b/src/engine/objects/Realm.java index 26b5a2d0..7f00fcd9 100644 --- a/src/engine/objects/Realm.java +++ b/src/engine/objects/Realm.java @@ -22,7 +22,6 @@ import engine.server.MBServerStatics; import org.pmw.tinylog.Logger; import java.awt.*; -import java.net.UnknownHostException; import java.sql.ResultSet; import java.sql.SQLException; import java.time.LocalDateTime; @@ -72,7 +71,7 @@ public class Realm { /** * ResultSet Constructor */ - public Realm(ResultSet rs) throws SQLException, UnknownHostException { + public Realm(ResultSet rs) throws SQLException { this.mapColor = new Color(Integer.parseInt(rs.getString("realmColor"), 16)); this.mapR = (float) (mapColor.getRed() * 0.00392156863);