From 8af9842f19e4817bbc35b2424d505235a1365c95 Mon Sep 17 00:00:00 2001 From: = Date: Wed, 27 May 2026 10:06:53 +0200 Subject: [PATCH 1/2] Feat: More package structure. --- .../java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java | 6 +++--- .../idi/idatt2003/g40/mappe/engine/package-info.java | 5 ----- .../g40/mappe/{engine => model}/Exchange.java | 10 ++++------ .../{exceptions => model}/NotEnoughMoneyException.java | 2 +- .../idi/idatt2003/g40/mappe/model/OwnedShareData.java | 2 +- .../edu/ntnu/idi/idatt2003/g40/mappe/model/Player.java | 4 +--- .../mappe/{engine => model}/TransactionArchive.java | 5 +---- .../idi/idatt2003/g40/mappe/model/TransactionData.java | 2 +- .../idatt2003/g40/mappe/service/GameStateLoader.java | 4 ++-- .../mappe/view/creategame/CreateGameController.java | 2 +- .../mappe/view/ingame/quit/QuitDialogController.java | 2 +- .../idatt2003/g40/mappe/view/widgets/WidgetEnum.java | 4 +++- .../view/widgets/dashboard/DashBoardController.java | 4 ++-- .../widgets/financialsummary/SummaryController.java | 7 +++++-- .../mappe/view/widgets/market/MarketController.java | 2 +- .../view/widgets/minigames/MiniGamesController.java | 1 + .../mappe/view/widgets/minigames/MiniGamesView.java | 1 + .../minigames/{ => engine}/GameEngineController.java | 4 +++- .../widgets/minigames/{ => engine}/GameEngineView.java | 5 +++-- .../widgets/minigames/{ => engine}/GameGimmick.java | 2 +- .../view/widgets/minigames/games/ClickerGame.java | 2 +- .../view/widgets/minigames/games/FindStockGame.java | 9 ++++++--- .../view/widgets/minigames/games/TimeInputsGame.java | 5 +++-- .../g40/mappe/view/widgets/stats/StatsController.java | 2 +- .../widgets/transactions/TransactionsController.java | 2 +- .../g40/mappe/{engine => model}/ExchangeTest.java | 8 +------- .../ntnu/idi/idatt2003/g40/mappe/model/PlayerTest.java | 1 - .../{engine => model}/TransactionArchiveTest.java | 7 +------ 28 files changed, 50 insertions(+), 60 deletions(-) delete mode 100644 src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/package-info.java rename src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/{engine => model}/Exchange.java (97%) rename src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/{exceptions => model}/NotEnoughMoneyException.java (88%) rename src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/{engine => model}/TransactionArchive.java (94%) rename src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/{ => engine}/GameEngineController.java (96%) rename src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/{ => engine}/GameEngineView.java (96%) rename src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/{ => engine}/GameGimmick.java (90%) rename src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/{engine => model}/ExchangeTest.java (96%) rename src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/{engine => model}/TransactionArchiveTest.java (93%) diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java index 186a096..b0c4bdb 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Main.java @@ -1,6 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; import edu.ntnu.idi.idatt2003.g40.mappe.model.SaveGame; import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; @@ -36,8 +36,8 @@ import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.financialsummary.SummaryView; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.market.MarketController; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.market.MarketView; -import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameEngineController; -import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameEngineView; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineController; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineView; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesController; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesView; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.games.ClickerGame; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/package-info.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/package-info.java deleted file mode 100644 index 70a3863..0000000 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/package-info.java +++ /dev/null @@ -1,5 +0,0 @@ -/** - * Contains classes giving a high level control of the application, - * such as {@link edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange}. - * */ -package edu.ntnu.idi.idatt2003.g40.mappe.engine; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/Exchange.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Exchange.java similarity index 97% rename from src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/Exchange.java rename to src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Exchange.java index 10775cc..10ee41f 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/Exchange.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Exchange.java @@ -1,9 +1,5 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.engine; +package edu.ntnu.idi.idatt2003.g40.mappe.model; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Share; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Transaction; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionFactory; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionType; import edu.ntnu.idi.idatt2003.g40.mappe.utils.Validator; @@ -13,6 +9,8 @@ import java.util.List; import java.util.Map; import java.util.Random; + +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineView; import javafx.beans.property.ReadOnlyIntegerProperty; import javafx.beans.property.ReadOnlyIntegerWrapper; @@ -331,7 +329,7 @@ public Transaction sell(BigDecimal amount, * -10% to +10%. *

* - * @see edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameEngineView + * @see GameEngineView */ public void advance() { for (Stock stock : stockMap.values()) { diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/exceptions/NotEnoughMoneyException.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/NotEnoughMoneyException.java similarity index 88% rename from src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/exceptions/NotEnoughMoneyException.java rename to src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/NotEnoughMoneyException.java index 8d19749..05ae352 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/exceptions/NotEnoughMoneyException.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/NotEnoughMoneyException.java @@ -1,4 +1,4 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.exceptions; +package edu.ntnu.idi.idatt2003.g40.mappe.model; /** * Exception primarily thrown when the active diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/OwnedShareData.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/OwnedShareData.java index 92aaa30..c524b2d 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/OwnedShareData.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/OwnedShareData.java @@ -9,7 +9,7 @@ * Holds just enough information to recreate a {@link Share} when the save is * loaded: the stock symbol, the quantity owned and the original purchase * price. The actual {@link Stock} object is looked up on the live - * {@link edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange} when the save is + * {@link Exchange} when the save is * applied. *

* diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Player.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Player.java index afc0b11..76c998c 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Player.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Player.java @@ -1,8 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe.model; import edu.ntnu.idi.idatt2003.g40.mappe.controller.PlayerStatusController; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.TransactionArchive; -import edu.ntnu.idi.idatt2003.g40.mappe.exceptions.NotEnoughMoneyException; import edu.ntnu.idi.idatt2003.g40.mappe.utils.Validator; import java.math.BigDecimal; import java.util.ArrayList; @@ -17,7 +15,7 @@ * diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/TransactionArchive.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionArchive.java similarity index 94% rename from src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/TransactionArchive.java rename to src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionArchive.java index 48baa7a..37afa33 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/TransactionArchive.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionArchive.java @@ -1,8 +1,5 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.engine; +package edu.ntnu.idi.idatt2003.g40.mappe.model; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Purchase; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Sale; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Transaction; import edu.ntnu.idi.idatt2003.g40.mappe.utils.Validator; import java.util.ArrayList; import java.util.Collections; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionData.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionData.java index 45f1bde..38c16a4 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionData.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionData.java @@ -12,7 +12,7 @@ * quantity traded, the price per unit at the time of the transaction, and * the in-game week it took place. Used by the * {@link edu.ntnu.idi.idatt2003.g40.mappe.service.SaveGameService} to - * persist the {@link edu.ntnu.idi.idatt2003.g40.mappe.engine.TransactionArchive} + * persist the {@link TransactionArchive} * across sessions. *

* diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/GameStateLoader.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/GameStateLoader.java index 0137ad2..0831427 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/GameStateLoader.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/service/GameStateLoader.java @@ -1,7 +1,7 @@ package edu.ntnu.idi.idatt2003.g40.mappe.service; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.TransactionArchive; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.TransactionArchive; import edu.ntnu.idi.idatt2003.g40.mappe.model.OwnedShareData; import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; import edu.ntnu.idi.idatt2003.g40.mappe.model.Portfolio; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/creategame/CreateGameController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/creategame/CreateGameController.java index fabe231..4ca9034 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/creategame/CreateGameController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/creategame/CreateGameController.java @@ -1,6 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.creategame; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; import edu.ntnu.idi.idatt2003.g40.mappe.model.SaveGame; import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/ingame/quit/QuitDialogController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/ingame/quit/QuitDialogController.java index 051481d..51bbd07 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/ingame/quit/QuitDialogController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/ingame/quit/QuitDialogController.java @@ -1,6 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.ingame.quit; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; import edu.ntnu.idi.idatt2003.g40.mappe.model.SaveGame; import edu.ntnu.idi.idatt2003.g40.mappe.model.Share; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/WidgetEnum.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/WidgetEnum.java index 9bf85ac..7d33946 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/WidgetEnum.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/WidgetEnum.java @@ -1,5 +1,7 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineView; + /** * Enum used to define the various widgets for the application. * @@ -23,7 +25,7 @@ public enum WidgetEnum { MINIGAMES_OVERVIEW, /** - * {@link edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameEngineView}. + * {@link GameEngineView}. * */ MINIGAMES_ENGINE, diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java index 52f005c..64fbad8 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java @@ -1,7 +1,7 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.dashboard; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; -import edu.ntnu.idi.idatt2003.g40.mappe.exceptions.NotEnoughMoneyException; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.NotEnoughMoneyException; import edu.ntnu.idi.idatt2003.g40.mappe.model.*; import edu.ntnu.idi.idatt2003.g40.mappe.service.PurchaseCalculator; import edu.ntnu.idi.idatt2003.g40.mappe.service.SaleCalculator; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/financialsummary/SummaryController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/financialsummary/SummaryController.java index 4fd2020..8f88ab0 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/financialsummary/SummaryController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/financialsummary/SummaryController.java @@ -1,12 +1,14 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.financialsummary; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventData; import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventManager; import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventSubscriber; import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventType; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewController; + +import javax.swing.event.ChangeListener; import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -34,6 +36,8 @@ public class SummaryController extends ViewController * */ private List playerNetWorthHistory; + private ChangeListener changeListener1; + /** * {@inheritDoc}. */ @@ -103,7 +107,6 @@ public void handleContextUpdate(final Exchange criticalExchange, final Player ac } else { this.playerNetWorthHistory.add(this.player.getStartingMoney()); } - getViewElement().setWeek(this.exchange.getWeek()); getViewElement().updateChart(this.playerNetWorthHistory.stream().map(BigDecimal::floatValue).toList()); getViewElement().setBalance(this.player.getMoney().floatValue(), this.player.getNetWorth().floatValue()); diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/market/MarketController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/market/MarketController.java index 1ae01e5..7aa94f6 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/market/MarketController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/market/MarketController.java @@ -1,6 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.market; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; import edu.ntnu.idi.idatt2003.g40.mappe.model.Share; import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesController.java index adafb12..4758464 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesController.java @@ -7,6 +7,7 @@ import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventType; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewController; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.WidgetEnum; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineController; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.games.ClickerGame; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.games.FindStockGame; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.games.TimeInputsGame; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesView.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesView.java index dad45a7..0b51e71 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesView.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/MiniGamesView.java @@ -1,6 +1,7 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewElement; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineView; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.scene.control.Button; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameEngineController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameEngineController.java similarity index 96% rename from src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameEngineController.java rename to src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameEngineController.java index 9210f8d..9ce8708 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameEngineController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameEngineController.java @@ -1,4 +1,4 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames; +package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine; import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventData; @@ -6,6 +6,8 @@ import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventType; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewController; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.WidgetEnum; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesActions; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesView; import javafx.animation.KeyFrame; import javafx.animation.Timeline; import javafx.util.Duration; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameEngineView.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameEngineView.java similarity index 96% rename from src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameEngineView.java rename to src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameEngineView.java index 3b13eb1..9db844c 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameEngineView.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameEngineView.java @@ -1,7 +1,8 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames; +package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewElement; -import java.util.function.IntConsumer; + +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesActions; import javafx.geometry.Pos; import javafx.scene.control.Button; import javafx.scene.control.Label; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameGimmick.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameGimmick.java similarity index 90% rename from src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameGimmick.java rename to src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameGimmick.java index 0f09224..6d694bf 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/GameGimmick.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/engine/GameGimmick.java @@ -1,4 +1,4 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames; +package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine; import java.util.function.IntConsumer; import javafx.scene.Node; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/ClickerGame.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/ClickerGame.java index 3fe6d86..dbba157 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/ClickerGame.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/ClickerGame.java @@ -1,7 +1,7 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.games; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewElement; -import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameGimmick; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameGimmick; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesActions; import java.util.function.IntConsumer; import javafx.scene.Node; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/FindStockGame.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/FindStockGame.java index d841f72..4a5f184 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/FindStockGame.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/FindStockGame.java @@ -1,12 +1,15 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.games; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewElement; -import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameGimmick; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineController; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameGimmick; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesActions; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.function.IntConsumer; + +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineView; import javafx.scene.Node; import javafx.scene.control.Button; import javafx.scene.control.Label; @@ -21,7 +24,7 @@ * *

Implements {@link GameGimmick}

* - * @see edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameEngineView + * @see GameEngineView * @see edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesView * */ public final class FindStockGame @@ -52,7 +55,7 @@ public final class FindStockGame * The logic for changing score. * *

Gotten from - * {@link edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameEngineController}

+ * {@link GameEngineController}

* */ private IntConsumer scoreModifier; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/TimeInputsGame.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/TimeInputsGame.java index 91eeb8d..0679ab2 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/TimeInputsGame.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/minigames/games/TimeInputsGame.java @@ -1,7 +1,8 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.games; import edu.ntnu.idi.idatt2003.g40.mappe.view.ViewElement; -import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameGimmick; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameEngineController; +import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.engine.GameGimmick; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.MiniGamesActions; import java.util.Random; import java.util.function.IntConsumer; @@ -50,7 +51,7 @@ public final class TimeInputsGame private final double successZoneExtent = 30; /** - * Consumer given by {@link edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.minigames.GameEngineController} + * Consumer given by {@link GameEngineController} * That determines how to calculate point gains/losses. * */ private IntConsumer scoreModifier; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/stats/StatsController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/stats/StatsController.java index 5fe9992..7f839f7 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/stats/StatsController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/stats/StatsController.java @@ -1,6 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.stats; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.Exchange; +import edu.ntnu.idi.idatt2003.g40.mappe.model.Exchange; import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; import edu.ntnu.idi.idatt2003.g40.mappe.model.Share; import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/transactions/TransactionsController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/transactions/TransactionsController.java index dabc63b..8b4ecbd 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/transactions/TransactionsController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/transactions/TransactionsController.java @@ -1,6 +1,6 @@ package edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.transactions; -import edu.ntnu.idi.idatt2003.g40.mappe.engine.TransactionArchive; +import edu.ntnu.idi.idatt2003.g40.mappe.model.TransactionArchive; import edu.ntnu.idi.idatt2003.g40.mappe.model.Sale; import edu.ntnu.idi.idatt2003.g40.mappe.model.Transaction; import edu.ntnu.idi.idatt2003.g40.mappe.service.event.EventData; diff --git a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/ExchangeTest.java b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/ExchangeTest.java similarity index 96% rename from src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/ExchangeTest.java rename to src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/ExchangeTest.java index 65337f7..77b507e 100644 --- a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/ExchangeTest.java +++ b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/ExchangeTest.java @@ -1,4 +1,4 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.engine; +package edu.ntnu.idi.idatt2003.g40.mappe.model; import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -9,12 +9,6 @@ import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Player; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Purchase; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Sale; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Share; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Transaction; import edu.ntnu.idi.idatt2003.g40.mappe.service.PurchaseCalculator; import edu.ntnu.idi.idatt2003.g40.mappe.service.SaleCalculator; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionCalculator; diff --git a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/PlayerTest.java b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/PlayerTest.java index 3837214..3d9d78a 100644 --- a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/PlayerTest.java +++ b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/PlayerTest.java @@ -5,7 +5,6 @@ import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertThrows; -import edu.ntnu.idi.idatt2003.g40.mappe.exceptions.NotEnoughMoneyException; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionFactory; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionType; import java.math.BigDecimal; diff --git a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/TransactionArchiveTest.java b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionArchiveTest.java similarity index 93% rename from src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/TransactionArchiveTest.java rename to src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionArchiveTest.java index fce1960..9e3f587 100644 --- a/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/TransactionArchiveTest.java +++ b/src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/model/TransactionArchiveTest.java @@ -1,4 +1,4 @@ -package edu.ntnu.idi.idatt2003.g40.mappe.engine; +package edu.ntnu.idi.idatt2003.g40.mappe.model; import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -6,11 +6,6 @@ import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Purchase; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Sale; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Share; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Stock; -import edu.ntnu.idi.idatt2003.g40.mappe.model.Transaction; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionFactory; import edu.ntnu.idi.idatt2003.g40.mappe.service.TransactionType; import java.math.BigDecimal; From 72a197c8ad76b0de4e012aec2cfbfa69b0715a8e Mon Sep 17 00:00:00 2001 From: = Date: Wed, 27 May 2026 11:26:09 +0200 Subject: [PATCH 2/2] Feat: Final refactor --- .../ntnu/idi/idatt2003/g40/mappe/model/Portfolio.java | 2 -- .../ntnu/idi/idatt2003/g40/mappe/model/Purchase.java | 10 ---------- .../edu/ntnu/idi/idatt2003/g40/mappe/model/Sale.java | 10 ---------- .../idi/idatt2003/g40/mappe/model/Transaction.java | 11 ++--------- 4 files changed, 2 insertions(+), 31 deletions(-) diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Portfolio.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Portfolio.java index 3b08af9..8a77791 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Portfolio.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Portfolio.java @@ -3,9 +3,7 @@ import edu.ntnu.idi.idatt2003.g40.mappe.utils.Validator; import java.math.BigDecimal; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * Represents a player's portfolio of shares. diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Purchase.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Purchase.java index af28170..01645b4 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Purchase.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Purchase.java @@ -23,14 +23,4 @@ public Purchase(final Share share, final TransactionCalculator calculator) { super(share, week, calculator); } - - /** - * Commits the purchase. - * - * @param player the {@link Player} object performing the purchase. - * */ - @Override - public void commit(final Player player) { - setCommitted(true); - } } diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Sale.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Sale.java index 7731aff..955201a 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Sale.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Sale.java @@ -23,14 +23,4 @@ public Sale(final Share share, final TransactionCalculator calculator) { super(share, week, calculator); } - - /** - * Commits the purchase. - * - * @param player the {@link Player} object performing the purchase. - * */ - @Override - public void commit(final Player player) { - setCommitted(true); - } } diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java index 62993f1..04c1dd1 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/model/Transaction.java @@ -97,14 +97,7 @@ public boolean isCommited() { * * @param player The player that performed the transaction. * */ - public abstract void commit(Player player); - - /** - * Sets the committed flag. - * - * @param value the value to set the committed flag to. - * */ - protected void setCommitted(final boolean value) { - committed = value; + public void commit(final Player player) { + committed = true; } }