From 0c4f125670f259b34efe068942861267417d0f48 Mon Sep 17 00:00:00 2001 From: Martin <ms618@hdm-stuttgart.de> Date: Sat, 20 Jan 2024 16:56:01 +0100 Subject: [PATCH] Update: Persistence.java (consolidated methods "saveMapLocally" und "uploadCreatedMap" into one method) Update: RuntimeInfo.java (added fields for additional Thread classes + getter/setter) Update: ThreadUpdateStats.java (added lines to reset stats counter after updating stats) Add: ThreadCreateAcc.java Add: ThreadDLCommMap.java Add: ThreadGetMapList.java Add: ThreadRstStats.java Add: ThreadSaveCommMap.java Add: ThreadSaveStats.java --- .../DataStorage/Classes/GsonHandler.java | 1 - .../DataStorage/Classes/Persistence.java | 47 +++--- .../DataStorage/Classes/RuntimeInfo.java | 146 ++++++++++++++++-- .../DataStorage/Classes/ThreadCreateAcc.java | 41 +++++ .../DataStorage/Classes/ThreadDLCommMap.java | 36 +++++ .../DataStorage/Classes/ThreadGetMapList.java | 30 ++++ .../DataStorage/Classes/ThreadRstStats.java | 30 ++++ .../Classes/ThreadSaveCommMap.java | 38 +++++ .../DataStorage/Classes/ThreadSaveStats.java | 30 ++++ .../DataStorage/Classes/ThreadStartup1.java | 3 +- .../DataStorage/Classes/ThreadStartup2.java | 3 +- .../DataStorage/Classes/ThreadUpdateMaps.java | 1 + .../Classes/ThreadUpdateStats.java | 5 + 13 files changed, 371 insertions(+), 40 deletions(-) create mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadCreateAcc.java create mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadDLCommMap.java create mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadGetMapList.java create mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadRstStats.java create mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveCommMap.java create mode 100644 src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveStats.java diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/GsonHandler.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/GsonHandler.java index 190cc6c4..0b6bb2a2 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/GsonHandler.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/GsonHandler.java @@ -146,5 +146,4 @@ public class GsonHandler { } } - } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/Persistence.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/Persistence.java index d2830af9..39ce2633 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/Persistence.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/Persistence.java @@ -195,7 +195,8 @@ public class Persistence { } } - public void saveCreatedMapLocally(MapData map) throws DatabaseException { + public void saveCreatedMap(MapData map, boolean doUpload) throws DatabaseException { + String part1 = ""; try { for(int i = 0; communityMaps.size() > i; i++){ if(communityMaps.get(i).getMapID().equals(map.getMapID())){ @@ -204,35 +205,27 @@ public class Persistence { } communityMaps.add(map); gsonHandler.saveMaps(communityMaps, MapType.COMMUNITYMAP); - //createLocalCommunityMapsList(); log.info("Newly created map stored successfully in JSON!"); } catch(Exception e){ log.error(e); - if(e.getMessage().contains("Identical map already saved") | e.getMessage().contains("ORA-01017")){ - throw new DatabaseException(e.getMessage()); - } - else{ - throw new DatabaseException("Unknown Database Error. Saving newly created Community-Map locally failed!"); - } - } - } - - public void uploadCreatedMap(MapData map) throws DatabaseException { - try { - db.uploadCommunityMap(map); - log.info("Newly created Community-Map successfully published!"); - } - catch(Exception e){ - log.error(e); - if(e.getMessage().contains("ORA-17868") | e.getMessage().contains("ORA-01017")){ - throw new DatabaseException("No connection to SQL server!"); - } - else if(e.getMessage().contains("ORA-00001")){ - throw new DatabaseException("Map already existing on communityMaps server!\n Look for mapID: " + map.getMapID()); - } - else{ - throw new DatabaseException("Unknown Database Error. Saving to SQL communityMap server failed!"); + if(e.getMessage().contains("Identical map already saved")){ + part1 = e.getMessage(); + } + } + if(doUpload) { + try { + db.uploadCommunityMap(map); + log.info("Newly created Community-Map successfully published!"); + } catch (Exception e) { + log.error(e); + if (e.getMessage().contains("ORA-17868") | e.getMessage().contains("ORA-01017")) { + throw new DatabaseException(part1 + "\nNo connection to SQL server! Saving to SQL communityMap server failed!"); + } else if (e.getMessage().contains("ORA-00001")) { + throw new DatabaseException(part1 + "\nMap already existing on communityMaps server!\n Look for mapID: " + map.getMapID()); + } else { + throw new DatabaseException(part1 + "\nUnknown Database Error. Saving to SQL communityMap server failed!"); + } } } } @@ -321,7 +314,7 @@ public class Persistence { throw new DatabaseException("Locally stored password does not match online password. Please reenter credentials!"); } } - else{ //überflüssig, da GSON schon beim laden der Daten meckern würde, wenn er den Accounttype nicht finden kann + else{ //eigentlich überflüssig, da GSON schon beim Laden der Daten meckern würde, wenn er den Accounttype nicht finden kann throw new DatabaseException("AccountType invalid - accountData corrupted! Please create new Account or login with existing!"); } log.info("Player account successfully verified!"); diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java index 9520b77d..5564faa2 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/RuntimeInfo.java @@ -26,11 +26,25 @@ public class RuntimeInfo { //Thread Status-Updates private ThreadStatus threadStartup1; - private String threadStartup1Message; + private String threadStartup1Msg; private ThreadStatus threadStartup2; - private String threadStartup2Message; + private String threadStartup2Msg; private ThreadStatus threadUpdateMaps; + private String threadUpdateMapsMsg; private ThreadStatus threadUpdateStats; + private String threadUpdateStatsMsg; + private ThreadStatus threadDLCommMap; + private String threadDLCommMapMsg; + private ThreadStatus threadSaveCommMap; + private String threadSaveCommMapMsg; + private ThreadStatus threadCommMapList; + private String threadCommMapListMsg; + private ThreadStatus threadRstStats; + private String threadRstStatsMsg; + private ThreadStatus threadSaveStats; + private String threadSaveStatsMsg; + private ThreadStatus threadCreateAcc; + private String threadCreateAccMsg; //Stats Tracking during Gameplay private int kills; @@ -116,12 +130,12 @@ public class RuntimeInfo { this.threadStartup1 = threadStartup1; } - public String getThreadStartup1Message() { - return threadStartup1Message; + public String getThreadStartup1Msg() { + return threadStartup1Msg; } - public void setThreadStartup1Message(String threadStartup1Message) { - this.threadStartup1Message = threadStartup1Message; + public void setThreadStartup1Msg(String threadStartup1Msg) { + this.threadStartup1Msg = threadStartup1Msg; } public ThreadStatus getThreadStartup2() { @@ -132,12 +146,12 @@ public class RuntimeInfo { this.threadStartup2 = threadStartup2; } - public String getThreadStartup2Message() { - return threadStartup2Message; + public String getThreadStartup2Msg() { + return threadStartup2Msg; } - public void setThreadStartup2Message(String threadStartup2Message) { - this.threadStartup2Message = threadStartup2Message; + public void setThreadStartup2Msg(String threadStartup2Msg) { + this.threadStartup2Msg = threadStartup2Msg; } public ThreadStatus getThreadUpdateMaps() { @@ -148,6 +162,14 @@ public class RuntimeInfo { this.threadUpdateMaps = threadUpdateMaps; } + public String getThreadUpdateMapsMsg() { + return threadUpdateMapsMsg; + } + + public void setThreadUpdateMapsMsg(String threadUpdateMapsMsg) { + this.threadUpdateMapsMsg = threadUpdateMapsMsg; + } + public ThreadStatus getThreadUpdateStats() { return threadUpdateStats; } @@ -156,6 +178,110 @@ public class RuntimeInfo { this.threadUpdateStats = threadUpdateStats; } + public String getThreadUpdateStatsMsg() { + return threadUpdateStatsMsg; + } + + public void setThreadUpdateStatsMsg(String threadUpdateStatsMsg) { + this.threadUpdateStatsMsg = threadUpdateStatsMsg; + } + + public ThreadStatus getThreadDLCommMap() { + return threadDLCommMap; + } + + public void setThreadDLCommMap(ThreadStatus threadDLCommMap) { + this.threadDLCommMap = threadDLCommMap; + } + + public String getThreadDLCommMapMsg() { + return threadDLCommMapMsg; + } + + public void setThreadDLCommMapMsg(String threadDLCommMapMsg) { + this.threadDLCommMapMsg = threadDLCommMapMsg; + } + + public ThreadStatus getThreadSaveCommMap() { + return threadSaveCommMap; + } + + public void setThreadSaveCommMap(ThreadStatus threadSaveCommMap) { + this.threadSaveCommMap = threadSaveCommMap; + } + + public String getThreadSaveCommMapMsg() { + return threadSaveCommMapMsg; + } + + public void setThreadSaveCommMapMsg(String threadSaveCommMapMsg) { + this.threadSaveCommMapMsg = threadSaveCommMapMsg; + } + + public ThreadStatus getThreadCommMapList() { + return threadCommMapList; + } + + public void setThreadCommMapList(ThreadStatus threadCommMapList) { + this.threadCommMapList = threadCommMapList; + } + + public String getThreadCommMapListMsg() { + return threadCommMapListMsg; + } + + public void setThreadCommMapListMsg(String threadCommMapListMsg) { + this.threadCommMapListMsg = threadCommMapListMsg; + } + + public ThreadStatus getThreadRstStats() { + return threadRstStats; + } + + public void setThreadRstStats(ThreadStatus threadRstStats) { + this.threadRstStats = threadRstStats; + } + + public String getThreadRstStatsMsg() { + return threadRstStatsMsg; + } + + public void setThreadRstStatsMsg(String threadRstStatsMsg) { + this.threadRstStatsMsg = threadRstStatsMsg; + } + + public ThreadStatus getThreadSaveStats() { + return threadSaveStats; + } + + public void setThreadSaveStats(ThreadStatus threadSaveStats) { + this.threadSaveStats = threadSaveStats; + } + + public String getThreadSaveStatsMsg() { + return threadSaveStatsMsg; + } + + public void setThreadSaveStatsMsg(String threadSaveStatsMsg) { + this.threadSaveStatsMsg = threadSaveStatsMsg; + } + + public ThreadStatus getThreadCreateAcc() { + return threadCreateAcc; + } + + public void setThreadCreateAcc(ThreadStatus threadCreateAcc) { + this.threadCreateAcc = threadCreateAcc; + } + + public String getThreadCreateAccMsg() { + return threadCreateAccMsg; + } + + public void setThreadCreateAccMsg(String threadCreateAccMsg) { + this.threadCreateAccMsg = threadCreateAccMsg; + } + public int getKills() { return kills; } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadCreateAcc.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadCreateAcc.java new file mode 100644 index 00000000..00ca1da5 --- /dev/null +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadCreateAcc.java @@ -0,0 +1,41 @@ +package de.hdm_stuttgart.battlearena.Model.DataStorage.Classes; + +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.ENUMs.AccountType; +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.ENUMs.ThreadStatus; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +public class ThreadCreateAcc extends Thread{ + + private static final Logger log = LogManager.getLogger(ThreadCreateAcc.class); + private String playerName; + private String password; + private AccountType type; + + @Override + public void run() { + + Persistence persistenceInst = Persistence.getInstance(); + RuntimeInfo runtimeInfoInst = RuntimeInfo.getInstance(); + + try { + runtimeInfoInst.setThreadCreateAcc(ThreadStatus.RUNNING); + persistenceInst.createAccount(playerName, password, type); + log.info("Create account thread finished successfully!"); + runtimeInfoInst.setThreadCreateAcc(ThreadStatus.FINISHED); + } catch (Exception e) { + log.error(e); + runtimeInfoInst.setThreadCreateAccMsg(e.getMessage()); + log.info("Create account thread failed!"); + runtimeInfoInst.setThreadCreateAcc(ThreadStatus.FAILED); + } + } + + public void startThread(String playerName, String password, AccountType type){ + this.playerName = playerName; + this.password = password; + this.type = type; + start(); + } + +} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadDLCommMap.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadDLCommMap.java new file mode 100644 index 00000000..be7d23d7 --- /dev/null +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadDLCommMap.java @@ -0,0 +1,36 @@ +package de.hdm_stuttgart.battlearena.Model.DataStorage.Classes; + +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.ENUMs.ThreadStatus; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +public class ThreadDLCommMap extends Thread{ + + private static final Logger log = LogManager.getLogger(ThreadDLCommMap.class); + private String mapID; + + @Override + public void run() { + + Persistence persistenceInst = Persistence.getInstance(); + RuntimeInfo runtimeInfoInst = RuntimeInfo.getInstance(); + + try { + runtimeInfoInst.setThreadDLCommMap(ThreadStatus.RUNNING); + persistenceInst.getCommunityMap(mapID); + log.info("Download Community-Map thread finished successfully!"); + runtimeInfoInst.setThreadDLCommMap(ThreadStatus.FINISHED); + } catch (Exception e) { + log.error(e); + runtimeInfoInst.setThreadDLCommMapMsg(e.getMessage()); + log.info("Download Community-Map thread failed!"); + runtimeInfoInst.setThreadDLCommMap(ThreadStatus.FAILED); + } + } + + public void startThread(String mapID){ + this.mapID = mapID; + start(); + } + +} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadGetMapList.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadGetMapList.java new file mode 100644 index 00000000..e550762d --- /dev/null +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadGetMapList.java @@ -0,0 +1,30 @@ +package de.hdm_stuttgart.battlearena.Model.DataStorage.Classes; + +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.ENUMs.ThreadStatus; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +public class ThreadGetMapList extends Thread { + + private static final Logger log = LogManager.getLogger(ThreadGetMapList.class); + + @Override + public void run() { + + Persistence persistenceInst = Persistence.getInstance(); + RuntimeInfo runtimeInfoInst = RuntimeInfo.getInstance(); + + try { + runtimeInfoInst.setThreadCommMapList(ThreadStatus.RUNNING); + persistenceInst.createRemoteCommunityMapsList(); + log.info("Retrieving Community-Map-List thread finished successfully!"); + runtimeInfoInst.setThreadCommMapList(ThreadStatus.FINISHED); + } catch (Exception e) { + log.error(e); + runtimeInfoInst.setThreadCommMapListMsg(e.getMessage()); + log.info("Retrieving Community-Map-List thread failed!"); + runtimeInfoInst.setThreadCommMapList(ThreadStatus.FAILED); + } + } + +} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadRstStats.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadRstStats.java new file mode 100644 index 00000000..9d3579e2 --- /dev/null +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadRstStats.java @@ -0,0 +1,30 @@ +package de.hdm_stuttgart.battlearena.Model.DataStorage.Classes; + +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.ENUMs.ThreadStatus; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +public class ThreadRstStats extends Thread { + + private static final Logger log = LogManager.getLogger(ThreadRstStats.class); + + @Override + public void run() { + + Persistence persistenceInst = Persistence.getInstance(); + RuntimeInfo runtimeInfoInst = RuntimeInfo.getInstance(); + + try { + runtimeInfoInst.setThreadRstStats(ThreadStatus.RUNNING); + persistenceInst.resetPlayerStatistics(); + log.info("Reset Player-Statistics thread finished successfully!"); + runtimeInfoInst.setThreadRstStats(ThreadStatus.FINISHED); + } catch (Exception e) { + log.error(e); + runtimeInfoInst.setThreadRstStatsMsg(e.getMessage()); + log.info("Reset Player-Statistics thread failed!"); + runtimeInfoInst.setThreadRstStats(ThreadStatus.FAILED); + } + } + +} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveCommMap.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveCommMap.java new file mode 100644 index 00000000..a7b8fe7f --- /dev/null +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveCommMap.java @@ -0,0 +1,38 @@ +package de.hdm_stuttgart.battlearena.Model.DataStorage.Classes; + +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.ENUMs.ThreadStatus; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +public class ThreadSaveCommMap extends Thread{ + + private static final Logger log = LogManager.getLogger(ThreadSaveCommMap.class); + private MapData map; + private boolean doUpload; + + @Override + public void run() { + + Persistence persistenceInst = Persistence.getInstance(); + RuntimeInfo runtimeInfoInst = RuntimeInfo.getInstance(); + + try { + runtimeInfoInst.setThreadSaveCommMap(ThreadStatus.RUNNING); + persistenceInst.saveCreatedMap(map, doUpload); + log.info("Uploading Community-Map thread finished successfully!"); + runtimeInfoInst.setThreadSaveCommMap(ThreadStatus.FINISHED); + } catch (Exception e) { + log.error(e); + runtimeInfoInst.setThreadSaveCommMapMsg(e.getMessage()); + log.info("Uploading Community-Map thread failed!"); + runtimeInfoInst.setThreadSaveCommMap(ThreadStatus.FAILED); + } + } + + public void startThread(MapData map, boolean doUpload){ + this.map = map; + this.doUpload = doUpload; + start(); + } + +} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveStats.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveStats.java new file mode 100644 index 00000000..d3174d6d --- /dev/null +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadSaveStats.java @@ -0,0 +1,30 @@ +package de.hdm_stuttgart.battlearena.Model.DataStorage.Classes; + +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.ENUMs.ThreadStatus; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +public class ThreadSaveStats extends Thread{ + + private static final Logger log = LogManager.getLogger(ThreadSaveStats.class); + + @Override + public void run() { + + Persistence persistenceInst = Persistence.getInstance(); + RuntimeInfo runtimeInfoInst = RuntimeInfo.getInstance(); + + try { + runtimeInfoInst.setThreadSaveStats(ThreadStatus.RUNNING); + persistenceInst.savePlayerStatistics(); + log.info("Save Player-Statistics thread finished successfully!"); + runtimeInfoInst.setThreadSaveStats(ThreadStatus.FINISHED); + } catch (Exception e) { + log.error(e); + runtimeInfoInst.setThreadSaveStatsMsg(e.getMessage()); + log.info("Save Player-Statistics thread failed!"); + runtimeInfoInst.setThreadSaveStats(ThreadStatus.FAILED); + } + } + +} diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup1.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup1.java index a680df0d..d224f074 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup1.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup1.java @@ -26,7 +26,8 @@ public class ThreadStartup1 extends Thread{ runtimeInfoInst.setThreadStartup1(ThreadStatus.FINISHED); } catch (Exception e) { log.error(e); - runtimeInfoInst.setThreadStartup1Message(e.getMessage()); + runtimeInfoInst.setThreadStartup1Msg(e.getMessage()); + log.info("Startup routine part1 failed!"); runtimeInfoInst.setThreadStartup1(ThreadStatus.FAILED); } } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup2.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup2.java index a711e529..b2d6bca9 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup2.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadStartup2.java @@ -21,7 +21,8 @@ public class ThreadStartup2 extends Thread{ runtimeInfoInst.setThreadStartup2(ThreadStatus.FINISHED); } catch (Exception e) { log.error(e); - runtimeInfoInst.setThreadStartup2Message(e.getMessage()); + runtimeInfoInst.setThreadStartup2Msg(e.getMessage()); + log.info("Startup routine part2 failed!"); runtimeInfoInst.setThreadStartup2(ThreadStatus.FAILED); } } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateMaps.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateMaps.java index 19d27572..d3b693ba 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateMaps.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateMaps.java @@ -21,6 +21,7 @@ public class ThreadUpdateMaps extends Thread{ runtimeInfoInst.setThreadUpdateMaps(ThreadStatus.FINISHED); } catch (Exception e) { log.error(e); + log.info("Update Core-Maps thread failed!"); runtimeInfoInst.setThreadUpdateMaps(ThreadStatus.FAILED); } } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateStats.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateStats.java index 9f0b7358..02475b2d 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateStats.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/DataStorage/Classes/ThreadUpdateStats.java @@ -17,6 +17,11 @@ public class ThreadUpdateStats extends Thread{ try { runtimeInfoInst.setThreadUpdateStats(ThreadStatus.RUNNING); persistenceInst.updatePlayerStatistics(runtimeInfoInst.getKills(), runtimeInfoInst.getDeaths(), runtimeInfoInst.getGameTime(), runtimeInfoInst.getBlocksDestroyed(), runtimeInfoInst.isGameWon()); + runtimeInfoInst.setKills(0); + runtimeInfoInst.setDeaths(0); + runtimeInfoInst.setGameTime(0); + runtimeInfoInst.setBlocksDestroyed(0); + runtimeInfoInst.setGameWon(false); log.info("Update statistics thread finished successfully!"); runtimeInfoInst.setThreadUpdateStats(ThreadStatus.FINISHED); } catch (Exception e) { -- GitLab