From 36814e3166f6d03fe11d2edfff8bb8bb77d2f9e3 Mon Sep 17 00:00:00 2001 From: aleandro Date: Fri, 19 Jun 2026 15:38:15 +0200 Subject: [PATCH] Initial final refactor (problems noticed by intellij) --- .../polimi/ingsw/gc14/ClientLauncherTUI.java | 3 +-- .../ingsw/gc14/Model/Cards/TribeCard.java | 2 +- .../TribeCards/Events/ShamanicRitual.java | 4 ++-- .../it/polimi/ingsw/gc14/Model/MiniModel.java | 23 +------------------ .../ingsw/gc14/Model/OrderLogicCard.java | 3 --- .../it/polimi/ingsw/gc14/Model/Player.java | 2 +- .../ingsw/gc14/Network/NetworkEvent.java | 4 +--- .../gc14/Network/NetworkEvents/AddPlayer.java | 6 ++--- .../Network/NetworkEvents/ApplyNextRound.java | 4 +--- .../NetworkEvents/DisconnectedPlayer.java | 6 ++--- .../NetworkEvents/DrawLowerBuildingCard.java | 6 ++--- .../NetworkEvents/DrawLowerTribeCard.java | 6 ++--- .../NetworkEvents/DrawUpperBuildingCard.java | 6 ++--- .../NetworkEvents/DrawUpperTribeCard.java | 6 ++--- .../gc14/Network/NetworkEvents/EndedGame.java | 4 +--- .../NetworkEvents/ReconnectPlayer.java | 7 ++---- .../gc14/Network/NetworkEvents/SkipTurn.java | 6 ++--- .../Network/NetworkEvents/SlotChoice.java | 6 ++--- .../Network/NetworkEvents/TotemChoice.java | 7 ++---- .../gc14/Network/RMI/Server/RMIHeartbeat.java | 2 +- .../gc14/Network/RMI/Server/RMIServer.java | 7 +----- .../View/GUI/LeaderboardFXMLController.java | 2 +- .../gc14/View/GUI/LoginFXMLController.java | 4 +++- .../gc14/View/GUI/MainFXMLController.java | 2 +- .../gc14/View/GUI/TotemFXMLController.java | 5 ++-- .../gc14/Controller/GameControllerTest.java | 3 +-- .../it/polimi/ingsw/gc14/Model/GameTest.java | 3 +-- .../ingsw/gc14/Model/Orders/Order2Test.java | 2 +- .../ingsw/gc14/Model/Orders/Order3Test.java | 2 +- .../ingsw/gc14/Model/Orders/Order4Test.java | 2 +- .../ingsw/gc14/Model/Orders/Order5Test.java | 2 +- .../polimi/ingsw/gc14/Model/PlayerTest.java | 2 -- 32 files changed, 45 insertions(+), 104 deletions(-) diff --git a/src/main/java/it/polimi/ingsw/gc14/ClientLauncherTUI.java b/src/main/java/it/polimi/ingsw/gc14/ClientLauncherTUI.java index 001f2bb..d0ec886 100644 --- a/src/main/java/it/polimi/ingsw/gc14/ClientLauncherTUI.java +++ b/src/main/java/it/polimi/ingsw/gc14/ClientLauncherTUI.java @@ -95,9 +95,8 @@ public class ClientLauncherTUI { /** * Starts the TUI client. Creates a JLine terminal, loops through login → game → rematch. * - * @throws InterruptedException if the thread is interrupted while waiting. */ - private void start() throws InterruptedException { + private void start() { try { System.setOut(new PrintStream(System.out, true, StandardCharsets.UTF_8)); System.setErr(new PrintStream(System.err, true, StandardCharsets.UTF_8)); diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCard.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCard.java index 2c611fd..a4e137c 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCard.java @@ -28,7 +28,7 @@ public abstract class TribeCard extends PlayableCard implements Serializable { /** * The minimum number of players required for this tribe card. */ - private int nMin=0; + private int nMin; /** * Returns the minimum number of players required for this tribe card. diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Events/ShamanicRitual.java b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Events/ShamanicRitual.java index b356a94..996f79a 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Events/ShamanicRitual.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Cards/TribeCards/Events/ShamanicRitual.java @@ -82,8 +82,8 @@ public class ShamanicRitual extends EventCard { @Override public void activateEvent (ArrayList playerList){ Map playerMap = new HashMap<>(); - int tmpIcons = 0; - int tmpCount = 0; + int tmpIcons; + int tmpCount; for (Player player : playerList) { tmpIcons = player.getShamans().stream().mapToInt(sh -> sh.getIcon()).sum(); diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/MiniModel.java b/src/main/java/it/polimi/ingsw/gc14/Model/MiniModel.java index 10347c7..cc500a5 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/MiniModel.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/MiniModel.java @@ -48,7 +48,7 @@ public class MiniModel implements Serializable { /** * Map of players indexed by username. */ - public Map players; + public final Map players; /** * List of totems still available for selection. @@ -60,27 +60,6 @@ public class MiniModel implements Serializable { */ public List standingPlayers; - /** - * Constructs an empty mini model. - */ - public MiniModel() { - } - - /** - * Constructs a mini model with only the card lists populated. - * - * @param upperListTribeCards the upper row of tribe cards on the board. - * @param lowerListTribeCards the lower row of tribe cards on the board. - * @param upperListBuildingCards the upper row of building cards on the board. - * @param lowerListBuildingCards the lower row of building cards on the board. - */ - public MiniModel(ArrayList upperListTribeCards,ArrayListlowerListTribeCards,ArrayList upperListBuildingCards,ArrayListlowerListBuildingCards) { - this.upperListTribeCards = upperListTribeCards; - this.lowerListTribeCards = lowerListTribeCards; - this.upperListBuildingCards = upperListBuildingCards; - this.lowerListBuildingCards = lowerListBuildingCards; - this.disconnectedPlayers = new ArrayList<>(); - } /** * Constructs a complete mini model from the current server-side game data. diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java b/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java index 8b7e2e0..994445b 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java @@ -33,8 +33,6 @@ public abstract class OrderLogicCard implements Serializable { return Collections.unmodifiableList(playerList); } - /** Total number of players in this game. */ - protected final int nPlayers; /** @@ -50,7 +48,6 @@ public abstract class OrderLogicCard implements Serializable { public OrderLogicCard(ArrayList players) { Collections.shuffle(players); this.players = new LinkedList<>(players); - nPlayers = players.size(); this.playerList = new ArrayList<>(players.stream().map(x -> new OrderPlayer(x, false)).toList()); } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Player.java b/src/main/java/it/polimi/ingsw/gc14/Model/Player.java index dcb7cee..11c01a4 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Player.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Player.java @@ -262,7 +262,7 @@ public class Player implements Serializable { */ @Override public String toString() { - int last = -1; + int last; var table = new AsciiTable(ROUNDED, 1); diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvent.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvent.java index 8baba99..eca61b2 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvent.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvent.java @@ -196,8 +196,6 @@ public abstract class NetworkEvent implements Serializable { * Applies this event to the specified client-side mini model. * * @param model the mini model on which the event must be applied. - * @return {@code true} if the event is applied successfully, - * {@code false} otherwise. */ - public abstract boolean apply(MiniModel model); + public abstract void apply(MiniModel model); } \ No newline at end of file diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/AddPlayer.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/AddPlayer.java index e74a1b4..bc1b125 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/AddPlayer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/AddPlayer.java @@ -50,19 +50,17 @@ public class AddPlayer extends NetworkEvent { * turn order, game state, and slot map. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.setPlayers(playerList); miniModel.setOrderLogicCard(orderLogicCard); miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setLastEvent(this); - return true; } } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ApplyNextRound.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ApplyNextRound.java index a7601c1..2445d4a 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ApplyNextRound.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ApplyNextRound.java @@ -76,10 +76,9 @@ public class ApplyNextRound extends NetworkEvent { * slot map, turn order, and game state for the new round. * * @param miniModel the client-side model to update. - * @return {@code true} always (this event cannot produce an error). */ @Override - public boolean apply(MiniModel miniModel) { + public void apply(MiniModel miniModel) { synchronized (miniModel) { miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setOrderLogicCard(orderLogicCard); @@ -90,7 +89,6 @@ public class ApplyNextRound extends NetworkEvent { miniModel.setUpperListBuildingCards(upperListBuildingCards); miniModel.setLowerListBuildingCards(lowerListBuildingCards); miniModel.setLastEvent(this); - return true; } } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DisconnectedPlayer.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DisconnectedPlayer.java index ae22b87..3ee7535 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DisconnectedPlayer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DisconnectedPlayer.java @@ -55,13 +55,12 @@ public class DisconnectedPlayer extends NetworkEvent { * updating player data, turn order, game state, and disconnected player list. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.setPlayers(playerList); miniModel.setOrderLogicCard(orderLogicCard); miniModel.setCurrentState(currentState); @@ -69,7 +68,6 @@ public class DisconnectedPlayer extends NetworkEvent { miniModel.setDisconnectedPlayers(disconnectedPlayers); miniModel.setAvailableTotems(availableTotems); miniModel.setLastEvent(this); - return true; } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerBuildingCard.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerBuildingCard.java index 6a31cba..abd52de 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerBuildingCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerBuildingCard.java @@ -40,13 +40,12 @@ public class DrawLowerBuildingCard extends NetworkEvent{ * from the lower building list and updating players, turn order, game state, and slot map. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.removeLowerBuildingCard(pos); miniModel.setPlayers(playerList); @@ -54,7 +53,6 @@ public class DrawLowerBuildingCard extends NetworkEvent{ miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setLastEvent(this); - return true; } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerTribeCard.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerTribeCard.java index cfd36e3..46f3fd3 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerTribeCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawLowerTribeCard.java @@ -39,13 +39,12 @@ public class DrawLowerTribeCard extends NetworkEvent{ * from the lower tribe list and updating players, turn order, game state, and slot map. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.removeLowerTribeCard(pos); miniModel.setPlayers(playerList); @@ -53,7 +52,6 @@ public class DrawLowerTribeCard extends NetworkEvent{ miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setLastEvent(this); - return true; } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperBuildingCard.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperBuildingCard.java index 8905424..d3edb12 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperBuildingCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperBuildingCard.java @@ -40,13 +40,12 @@ public class DrawUpperBuildingCard extends NetworkEvent{ * from the upper building list and updating players, turn order, game state, and slot map. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.removeUpperBuildingCard(pos); miniModel.setPlayers(playerList); @@ -54,7 +53,6 @@ public class DrawUpperBuildingCard extends NetworkEvent{ miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setLastEvent(this); - return true; } } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperTribeCard.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperTribeCard.java index df05c24..5e66dcd 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperTribeCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/DrawUpperTribeCard.java @@ -39,20 +39,18 @@ public class DrawUpperTribeCard extends NetworkEvent{ * from the upper tribe list and updating players, turn order, game state, and slot map. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.removeUpperTribeCard(pos); miniModel.setPlayers(playerList); miniModel.setOrderLogicCard(orderLogicCard); miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setLastEvent(this); - return true; } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/EndedGame.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/EndedGame.java index b5e9e2d..dd2ef64 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/EndedGame.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/EndedGame.java @@ -52,10 +52,9 @@ public class EndedGame extends NetworkEvent { * game state and setting the standings list for the leaderboard. * * @param miniModel the client-side model to update. - * @return {@code true} always (this event cannot produce an error). */ @Override - public boolean apply(MiniModel miniModel) { + public void apply(MiniModel miniModel) { synchronized (miniModel) { miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setOrderLogicCard(orderLogicCard); @@ -63,7 +62,6 @@ public class EndedGame extends NetworkEvent { miniModel.setPlayers(playerList); miniModel.setStandingPlayers(playerList); miniModel.setLastEvent(this); - return true; } } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ReconnectPlayer.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ReconnectPlayer.java index c72721c..bcca6ee 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ReconnectPlayer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/ReconnectPlayer.java @@ -48,21 +48,18 @@ public class ReconnectPlayer extends NetworkEvent { * turn order, current game state, and slot assignments are updated. * * @param miniModel the mini model on which to apply the event. - * @return {@code true} if the update is applied successfully, - * {@code false} if the event represents an error. */ @Override - public boolean apply(MiniModel miniModel) { + public void apply(MiniModel miniModel) { synchronized (miniModel) { if (isError) - return false; + return; miniModel.setPlayers(playerList); miniModel.setOrderLogicCard(orderLogicCard); miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setDisconnectedPlayers(disconnectedPlayers); miniModel.setLastEvent(this); - return true; } } } \ No newline at end of file diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipTurn.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipTurn.java index 907fbfa..f71ddb2 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipTurn.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipTurn.java @@ -34,19 +34,17 @@ public class SkipTurn extends NetworkEvent { * turn order, game state, and slot map after a skip turn action. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.setPlayers(playerList); miniModel.setOrderLogicCard(orderLogicCard); miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setLastEvent(this); - return true; } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SlotChoice.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SlotChoice.java index 0eb7b6b..ce5e0ae 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SlotChoice.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SlotChoice.java @@ -40,19 +40,17 @@ public class SlotChoice extends NetworkEvent { * turn order, game state, and slot map after a slot selection. * * @param miniModel the client-side model to update. - * @return {@code false} if the event is marked as an error; {@code true} otherwise. */ @Override - public boolean apply(MiniModel miniModel){ + public void apply(MiniModel miniModel){ synchronized (miniModel) { if (isError) - return false; + return; miniModel.setPlayers(playerList); miniModel.setOrderLogicCard(orderLogicCard); miniModel.setCurrentState(currentState); miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setLastEvent(this); - return true; } } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/TotemChoice.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/TotemChoice.java index fb87143..b792103 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/TotemChoice.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/TotemChoice.java @@ -64,14 +64,12 @@ public class TotemChoice extends NetworkEvent implements Serializable { * totems are updated. * * @param miniModel the mini model on which to apply the event. - * @return {@code true} if the update is applied successfully, - * {@code false} if the event represents an error. */ @Override - public boolean apply(MiniModel miniModel) { + public void apply(MiniModel miniModel) { synchronized (miniModel) { if (isError) - return false; + return; miniModel.setPlayers(playerList); miniModel.setOrderLogicCard(orderLogicCard); @@ -79,7 +77,6 @@ public class TotemChoice extends NetworkEvent implements Serializable { miniModel.setSlotPlayerMap(slotPlayerMap); miniModel.setAvailableTotems(availableTotems); miniModel.setLastEvent(this); - return true; } } } \ No newline at end of file diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIHeartbeat.java b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIHeartbeat.java index ec3125d..e77a5b6 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIHeartbeat.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIHeartbeat.java @@ -27,7 +27,7 @@ import java.util.concurrent.*; */ public class RMIHeartbeat { - private String username = ""; + private String username; private final LimitedMap playerList; private final Map clients; private final BlockingQueue actionQueue; diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java index 5c440ad..802c103 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java @@ -295,20 +295,15 @@ public class RMIServer extends UnicastRemoteObject implements IGameServer { *

The method configures the server hostname, creates the RMI registry * on the specified port, and registers this server instance under the * {@code RMIGameServer} name. - * - * @return {@code true} if the server starts successfully, - * {@code false} otherwise. */ - public boolean start() { + public void start() { try { System.setProperty("java.rmi.server.hostname", host); Registry registry = LocateRegistry.createRegistry(nPort); registry.rebind("RMIGameServer", this); System.out.println("RMI Server started on port: " + nPort); - return true; } catch (RemoteException e) { e.printStackTrace(); - return false; } } diff --git a/src/main/java/it/polimi/ingsw/gc14/View/GUI/LeaderboardFXMLController.java b/src/main/java/it/polimi/ingsw/gc14/View/GUI/LeaderboardFXMLController.java index 18298f3..421b5f2 100644 --- a/src/main/java/it/polimi/ingsw/gc14/View/GUI/LeaderboardFXMLController.java +++ b/src/main/java/it/polimi/ingsw/gc14/View/GUI/LeaderboardFXMLController.java @@ -53,7 +53,7 @@ public class LeaderboardFXMLController { /** Returns a cached {@link Image} for the given classpath {@code path}, loading it on first access. */ private Image loadImage(String path) { return imageCache.computeIfAbsent(path, - p -> new Image(getClass().getResourceAsStream(p))); + p -> new Image(Objects.requireNonNull(getClass().getResourceAsStream(p)))); } diff --git a/src/main/java/it/polimi/ingsw/gc14/View/GUI/LoginFXMLController.java b/src/main/java/it/polimi/ingsw/gc14/View/GUI/LoginFXMLController.java index e08af98..392a602 100644 --- a/src/main/java/it/polimi/ingsw/gc14/View/GUI/LoginFXMLController.java +++ b/src/main/java/it/polimi/ingsw/gc14/View/GUI/LoginFXMLController.java @@ -20,6 +20,8 @@ import javafx.scene.paint.Color; import javafx.stage.Screen; import javafx.util.Duration; +import java.util.Objects; + /** * FXML controller for the login scene. * @@ -69,7 +71,7 @@ public class LoginFXMLController { @FXML public void initialize() { // Background setup - Image img = new Image(getClass().getResourceAsStream("/GUIImages/BackgroundLogin.png")); + Image img = new Image(Objects.requireNonNull(getClass().getResourceAsStream("/GUIImages/BackgroundLogin.png"))); backgroundImage.setImage(img); Rectangle2D screenBounds = Screen.getPrimary().getBounds(); backgroundImage.setFitWidth(screenBounds.getWidth()); diff --git a/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java b/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java index 3e92be3..b6b4461 100644 --- a/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java +++ b/src/main/java/it/polimi/ingsw/gc14/View/GUI/MainFXMLController.java @@ -91,7 +91,7 @@ public class MainFXMLController { /** Returns a cached {@link Image} for the given classpath {@code path}, loading it on first access. */ private Image loadImage(String path) { return imageCache.computeIfAbsent(path, - p -> new Image(getClass().getResourceAsStream(p))); + p -> new Image(Objects.requireNonNull(getClass().getResourceAsStream(p)))); } /** diff --git a/src/main/java/it/polimi/ingsw/gc14/View/GUI/TotemFXMLController.java b/src/main/java/it/polimi/ingsw/gc14/View/GUI/TotemFXMLController.java index 51c845e..197be57 100644 --- a/src/main/java/it/polimi/ingsw/gc14/View/GUI/TotemFXMLController.java +++ b/src/main/java/it/polimi/ingsw/gc14/View/GUI/TotemFXMLController.java @@ -16,6 +16,7 @@ import javafx.stage.Screen; import javafx.util.Duration; import java.util.Locale; +import java.util.Objects; /** * FXML controller for the totem selection scene. @@ -52,7 +53,7 @@ public class TotemFXMLController { /** Initializes the scene: sets the background image to fill the screen. */ @FXML public void initialize() { - Image img = new Image(getClass().getResourceAsStream("/GUIImages/Background.png")); + Image img = new Image(Objects.requireNonNull(getClass().getResourceAsStream("/GUIImages/Background.png"))); backgroundImage.setImage(img); Rectangle2D screenBounds = Screen.getPrimary().getBounds(); backgroundImage.setFitWidth(screenBounds.getWidth()); @@ -122,7 +123,7 @@ public class TotemFXMLController { /** Builds a totem card widget; if {@code interactive}, wires click/hover handlers and selection logic. */ private VBox buildCard(Totems totem, int idx, boolean interactive) { - ImageView img = new ImageView(new Image(getClass().getResourceAsStream("/GUIImages/Totems/totem_" + String.valueOf(totem).toLowerCase(Locale.ROOT) + ".png"))); + ImageView img = new ImageView(new Image(Objects.requireNonNull(getClass().getResourceAsStream("/GUIImages/Totems/totem_" + String.valueOf(totem).toLowerCase(Locale.ROOT) + ".png")))); img.setFitHeight(150); img.setPreserveRatio(true); diff --git a/src/test/java/it/polimi/ingsw/gc14/Controller/GameControllerTest.java b/src/test/java/it/polimi/ingsw/gc14/Controller/GameControllerTest.java index d861afe..c09df4e 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Controller/GameControllerTest.java +++ b/src/test/java/it/polimi/ingsw/gc14/Controller/GameControllerTest.java @@ -180,7 +180,7 @@ class GameControllerTest { fail("Current player has no remaining draw actions."); } - private Queue completeSlotChoiceWithSlots(Game game, GameController controller, int... slotIndexes) { + private void completeSlotChoiceWithSlots(Game game, GameController controller, int... slotIndexes) { assertEquals(game.getNPlayers(), slotIndexes.length); Queue order = new LinkedList<>(); @@ -194,7 +194,6 @@ class GameControllerTest { assertEquals(GameStages.RES_ACTIONS, game.getCurrentState().getGameStage()); - return order; } diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/GameTest.java b/src/test/java/it/polimi/ingsw/gc14/Model/GameTest.java index 668d85d..33f9f8a 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/GameTest.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/GameTest.java @@ -39,7 +39,7 @@ class GameTest { assertNotNull(game.getCurrentState().getCurrentPlayer()); } - private Queue completeSlotChoice(Game game) { + private void completeSlotChoice(Game game) { if (game.getCurrentState().getGameStage() == GameStages.TOTEM_CHOICE) { completeTotemChoice(game); } @@ -64,7 +64,6 @@ class GameTest { assertEquals(GameStages.RES_ACTIONS, game.getCurrentState().getGameStage()); - return order; } private int firstNonEventIndex(List cards) { diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order2Test.java b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order2Test.java index 0b0e93d..5c2e2ed 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order2Test.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order2Test.java @@ -156,7 +156,7 @@ class Order2Test { } @Test - void toStringTest() throws NoSuchFieldException, IllegalAccessException { + void toStringTest() { String usr1 = "wPIshEUhiOpRRnIBFfM89s2$@q$9FGbz"; String usr2 = "L*Ncw1rjjrF2xn%H@4P1iC@&NNIooQQk"; diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order3Test.java b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order3Test.java index dd82ffb..863efd9 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order3Test.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order3Test.java @@ -181,7 +181,7 @@ class Order3Test { assertEquals(p1, order.getFirst()); } @Test - void toStringTest() throws NoSuchFieldException, IllegalAccessException { + void toStringTest() { String usr1 = "wPIshEUhiOpRRnIBFfM89s2$@q$9FGbz"; String usr2 = "L*Ncw1rjjrF2xn%H@4P1iC@&NNIooQQk"; String usr3 = "L*Ncw1rjjrF2xn%H@4d1iC@&NNIooQQk"; diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order4Test.java b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order4Test.java index 0dc8617..03a1c9e 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order4Test.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order4Test.java @@ -272,7 +272,7 @@ class Order4Test { } @Test - void toStringTest() throws NoSuchFieldException, IllegalAccessException { + void toStringTest() { String usr1 = "wPIshEUhiOpRRnIBFfM89s2$@q$9FGbz"; String usr2 = "L*Ncw1rjjrF2xn%H@4P1iC@&NNIooQQk"; String usr3 = "L*Ncw1rjjrF2xn%H@4d1iC@&NNIooQQk"; diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order5Test.java b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order5Test.java index 7a03d7f..fff545f 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order5Test.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/Orders/Order5Test.java @@ -361,7 +361,7 @@ class Order5Test { assertEquals(p1, order.getFirst()); } @Test - void toStringTest() throws NoSuchFieldException, IllegalAccessException { + void toStringTest() { String usr1 = "wPIshEUhiOpRRnIBFfM89s2$@q$9FGbz"; String usr2 = "L*Ncw1rjjrF2xn%H@4P1iC@&NNIooQQk"; String usr3 = "L*Ncw1rjjrF2xn%H@4d1iC@&NNIooQQk"; diff --git a/src/test/java/it/polimi/ingsw/gc14/Model/PlayerTest.java b/src/test/java/it/polimi/ingsw/gc14/Model/PlayerTest.java index 11ac121..2813384 100644 --- a/src/test/java/it/polimi/ingsw/gc14/Model/PlayerTest.java +++ b/src/test/java/it/polimi/ingsw/gc14/Model/PlayerTest.java @@ -1,7 +1,5 @@ package it.polimi.ingsw.gc14.Model; -import it.polimi.ingsw.gc14.Model.Cards.Building.Effects.*; -import it.polimi.ingsw.gc14.Model.Cards.BuildingCard; import it.polimi.ingsw.gc14.Model.Cards.TribeCards.CharacterType; import it.polimi.ingsw.gc14.Model.Cards.TribeCards.Characters.*; import org.junit.jupiter.api.DisplayName;