From d7b1870e7a71749f3ccd48c96f540c98b2daf86a Mon Sep 17 00:00:00 2001 From: Martin <ms618@hdm-stuttgart.de> Date: Sun, 21 Jan 2024 21:16:08 +0100 Subject: [PATCH] Update: Minor improvements --- .../battlearena/Controller/LoginController.java | 6 ++++++ .../Model/DataStorage/Classes/Persistence.java | 15 +++------------ 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Controller/LoginController.java b/src/main/java/de/hdm_stuttgart/battlearena/Controller/LoginController.java index bb09e451..3dd94f73 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Controller/LoginController.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Controller/LoginController.java @@ -2,7 +2,9 @@ package de.hdm_stuttgart.battlearena.Controller; import de.hdm_stuttgart.battlearena.Controller.Utilities.SceneLoader; import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Exceptions.DatabaseException; +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Exceptions.ParserException; import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Persistence; +import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Utilities.Parser; import javafx.application.Platform; import javafx.fxml.FXML; import javafx.scene.control.Label; @@ -36,11 +38,15 @@ public class LoginController { Thread thread = new Thread(() -> { try { persistence.login(playerName.getText(), password.getText()); + persistence.loadPlayerStatistics(); + Parser.playerStatsValid(persistence.getStatistics()); Platform.runLater(() -> switchScene("MainMenu")); } catch (NoSuchAlgorithmException e) { throw new RuntimeException(e); } catch (DatabaseException e) { Platform.runLater(() -> errorMessage.setText(e.getMessage())); + } catch (ParserException e) { + throw new RuntimeException(e); } }); 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 09485bed..9291ee84 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 @@ -465,25 +465,16 @@ public class Persistence { try { String hash = HashGenerator.hashAndHex(password); if (hash.equals(db.checkCredentials(userName))) { - PlayerAccount playerAccount = new PlayerAccount(userName, hash, AccountType.ONLINE); - gsonHandler.saveAccount(playerAccount); - gsonHandler.loadAccount(); - db.getStatistics(userName); - Parser.playerStatsValid(statistics); + account = new PlayerAccount(userName, hash, AccountType.ONLINE); + gsonHandler.saveAccount(account); log.info("Login successful!"); } else { - throw new DatabaseException(); + throw new DatabaseException("Wrong password!"); } } catch (GSONException | SQLException e) { throw new RuntimeException(e); } - catch (DatabaseException e) { - throw new DatabaseException("Wrong password!"); - } - catch (ParserException e) { - throw new DatabaseException("Player statistics data corrupted!"); - } } } -- GitLab