diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/check_nick/CheckUsernameHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/check_nick/CheckUsernameHandler.java index 95debb0..0c70e55 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/check_nick/CheckUsernameHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/check_nick/CheckUsernameHandler.java @@ -8,7 +8,6 @@ import java.util.Optional; /** Handles {@link CheckUsernameRequest}s to check whether a username is available. */ public class CheckUsernameHandler extends CommandHandler { - private final ResponseDispatcher responseDispatcher; private final UserRegistry userRegistry; /** @@ -18,7 +17,7 @@ public class CheckUsernameHandler extends CommandHandler { * @param userRegistry the registry used to look up existing users */ public CheckUsernameHandler(ResponseDispatcher responseDispatcher, UserRegistry userRegistry) { - this.responseDispatcher = responseDispatcher; + super(responseDispatcher); this.userRegistry = userRegistry; } diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/login/LoginHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/login/LoginHandler.java index 4215b3b..5f455ca 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/login/LoginHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/login/LoginHandler.java @@ -14,7 +14,6 @@ import java.util.Optional; * already */ public class LoginHandler extends CommandHandler { - private final ResponseDispatcher responseDispatcher; private final UserRegistry userRegistry; private final UserFactory userFactory; @@ -25,7 +24,7 @@ public class LoginHandler extends CommandHandler { * @param userRegistry the registry used to look up existing users and create the new one */ public LoginHandler(ResponseDispatcher responseDispatcher, UserRegistry userRegistry) { - this.responseDispatcher = responseDispatcher; + super(responseDispatcher); this.userRegistry = userRegistry; this.userFactory = new UserFactory(userRegistry); } diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/logout/LogoutHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/logout/LogoutHandler.java index 4ef9f98..199c207 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/logout/LogoutHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/logout/LogoutHandler.java @@ -8,7 +8,6 @@ import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.dispatch /** Handles {@link LogoutRequest} to logout connected user. */ public class LogoutHandler extends CommandHandler { - private final ResponseDispatcher responseDispatcher; private final UserRegistry userRegistry; /** @@ -18,7 +17,7 @@ public class LogoutHandler extends CommandHandler { * @param userRegistry registry responsible for tracking connected user sessions */ public LogoutHandler(ResponseDispatcher responseDispatcher, UserRegistry userRegistry) { - this.responseDispatcher = responseDispatcher; + super(responseDispatcher); this.userRegistry = userRegistry; } diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/ping/PingHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/ping/PingHandler.java index aed42e5..69f389e 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/ping/PingHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/app/commands/ping/PingHandler.java @@ -6,7 +6,6 @@ import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.dispatch /** Handler for {@link PingRequest}. */ public class PingHandler extends CommandHandler { - private final ResponseDispatcher responseDispatcher; /** * Create a new PingHandler to execute {@link PingRequest}s @@ -14,7 +13,7 @@ public class PingHandler extends CommandHandler { * @param responseDispatcher dispatcher used to send responses back to clients */ public PingHandler(ResponseDispatcher responseDispatcher) { - this.responseDispatcher = responseDispatcher; + super(responseDispatcher); } /** diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/command/execution/CommandHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/command/execution/CommandHandler.java index aa9c4da..f0f8b97 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/command/execution/CommandHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/network/command/execution/CommandHandler.java @@ -2,6 +2,7 @@ package ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution; import ch.unibas.dmi.dbis.cs108.casono.server.network.command.execution.checks.HandlerCheck; import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.request.Request; +import ch.unibas.dmi.dbis.cs108.casono.server.network.protocol.response.dispatcher.ResponseDispatcher; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -13,6 +14,16 @@ import java.util.List; */ public abstract class CommandHandler { private final List checks = new ArrayList<>(); + protected final ResponseDispatcher responseDispatcher; + + /** + * Constructs a CommandHandler with the specified ResponseDispatcher. + * + * @param responseDispatcher the ResponseDispatcher instance used to send responses to clients. + */ + public CommandHandler(ResponseDispatcher responseDispatcher) { + this.responseDispatcher = responseDispatcher; + } /** * Adds a handler check to be performed before request execution.