Browse Source

Retrieve Admin Log events from database as a map.

master
MagicBot 2 years ago
parent
commit
7cb0e5f6b2
  1. 69
      src/discord/Database.java

69
src/discord/Database.java

@ -15,33 +15,34 @@ import org.pmw.tinylog.Logger;
import java.sql.*; import java.sql.*;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
public class Database { public class Database {
public String sqlURI;
public static Boolean online; public static Boolean online;
// Load and instance the JDBC Driver
static { static {
try { try {
Class.forName("com.mysql.cj.jdbc.Driver").newInstance(); Class.forName("com.mysql.cj.jdbc.Driver").newInstance();
} catch (InstantiationException | ClassNotFoundException | IllegalAccessException e) { } catch (InstantiationException | ClassNotFoundException | IllegalAccessException e) {
// TODO Auto-generated catch block // TODO Auto-generated catch block
Logger.error(e.toString()); Logger.error(e.toString());
;
online = false; online = false;
} }
} }
// Load and instance the JDBC Driver
public String sqlURI;
public void configureDatabase() { public void configureDatabase() {
// Build connection string from JSON object. // Build connection string from JSON object.
sqlURI = "jdbc:mysql://"; sqlURI = "jdbc:mysql://";
sqlURI += ConfigManager.MB_DATABASE_ADDRESS.getValue() + ':' + ConfigManager.MB_DATABASE_PORT.getValue(); sqlURI += ConfigManager.MB_DATABASE_ADDRESS.getValue() + ':' + ConfigManager.MB_DATABASE_PORT.getValue();
sqlURI += '/' + (String) ConfigManager.MB_DATABASE_NAME.getValue() + '?'; sqlURI += '/' + ConfigManager.MB_DATABASE_NAME.getValue() + '?';
sqlURI += "useServerPrepStmts=true"; sqlURI += "useServerPrepStmts=true";
sqlURI += "&cachePrepStmts=false"; sqlURI += "&cachePrepStmts=false";
sqlURI += "&cacheCallableStmts=true"; sqlURI += "&cacheCallableStmts=true";
@ -66,8 +67,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
; online = false;
this.online = false;
return false; return false;
} }
} }
@ -88,8 +88,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
; online = false;
this.online = false;
return false; return false;
} }
} }
@ -111,7 +110,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
return false; return false;
} }
} }
@ -157,7 +156,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
} }
return discordAccounts; return discordAccounts;
@ -188,7 +187,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
} }
return outString; return outString;
} }
@ -214,15 +213,15 @@ public class Database {
if (counter > 2) { if (counter > 2) {
outString += "\n"; outString += "\n";
counter = 0; } counter = 0;
else } else
outString += " "; outString += " ";
} }
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
} }
if (outString.length() > 1500) if (outString.length() > 1500)
@ -230,6 +229,7 @@ public class Database {
else else
return outString; return outString;
} }
public int getTrashCount() { public int getTrashCount() {
int trashCount = 0; int trashCount = 0;
@ -251,12 +251,40 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
} }
return trashCount; return trashCount;
} }
public HashMap<Integer, String> getAdminEvents() {
HashMap<Integer, String> outMap = new HashMap<>();
String queryString = "SELECT * from dyn_admin_log where `SentFlag` = 0";
try (Connection connection = DriverManager.getConnection(sqlURI, ConfigManager.MB_DATABASE_USER.getValue(),
ConfigManager.MB_DATABASE_PASS.getValue())) {
// Discord Admin Log lookup of unreported events
PreparedStatement adminLogQuery = connection.prepareStatement(queryString);
ResultSet rs = adminLogQuery.executeQuery();
String workString;
while (rs.next()) {
workString = "___Admin Event___\n" +
"Character: " + rs.getString("charName") + "\n" +
"Event: " + rs.getString("eventString");
outMap.put(rs.getInt("entry"), workString);
}
} catch (SQLException e) {
Logger.error(e.toString());
}
return outMap;
}
public String getTrashFile() { public String getTrashFile() {
String outString = "machineID : count\n"; String outString = "machineID : count\n";
@ -278,7 +306,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
} }
return outString; return outString;
} }
@ -332,8 +360,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
; online = false;
this.online = false;
} }
return discordAccounts; return discordAccounts;
@ -355,7 +382,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
} }
return popString; return popString;
@ -374,7 +401,7 @@ public class Database {
} catch (SQLException e) { } catch (SQLException e) {
Logger.error(e.toString()); Logger.error(e.toString());
this.online = false; online = false;
} }
} }
} }

Loading…
Cancel
Save