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 0fdae3c..f6c1a58 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 @@ -1,7 +1,21 @@ 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 java.util.ArrayList; +import java.util.Collections; +import java.util.List; -public interface CommandHandler { - void execute(T request); +public abstract class CommandHandler { + private final List checks = new ArrayList<>(); + + protected final void addCheck(HandlerCheck check) { + checks.add(check); + } + + public final List getChecks() { + return Collections.unmodifiableList(checks); + } + + public void execute(T request) {} }