Refactor to remove abstraction.

This commit is contained in:
2023-05-22 12:42:34 -04:00
parent d67026edba
commit f6aa71e9fb
3 changed files with 44 additions and 36 deletions
+23 -24
View File
@@ -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(?,?,?,?)")) {
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);
preparedStatement.setInt(1, realm.getRealmID());
preparedStatement.setInt(2, (realm.getRulingCity() == null) ? 0 : realm.getRulingCity().getObjectUUID());
preparedStatement.setInt(3, realm.getCharterType());
executeUpdate();
if (realm.ruledSince != null)
preparedStatement.setTimestamp(4, Timestamp.valueOf(realm.ruledSince));
else
preparedStatement.setNull(4, java.sql.Types.DATE);
preparedStatement.execute();
} catch (SQLException e) {
Logger.error(e);
}
}
}
+20 -10
View File
@@ -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;
}
}