Add pre-execution checks with CommandHandlerExecutor to CommandHandler #242

Merged
lars.winzer merged 12 commits from feat/57-pre-execution-checks-for-commandhandler into main 2026-04-08 18:58:21 +02:00
lars.winzer commented 2026-04-08 18:29:23 +02:00 (Migrated from git.scicore.unibas.ch)

Refactored relation with SessionManager and NetworkManager by moving CommandRouter relation from SessionManager to NetworkManager.

Added HandlerCheck functional interface to allow for pre-execution checks as both named classes and stateless lambda.

Added CommandHandlerExecutor to perform defined HandlerChecks and invoke execution of CommandHandler if all checks passed.

Modified CommandRouter to delegate execution of HandlerChecks and CommandHandler .

Added UserLoggedInCheck to perform check if Session is associated with User, i.e. logged in.

Modified guide on adding a command aswell as the deep-dive with the new components.

Closes #57

Refactored relation with `SessionManager` and `NetworkManager` by moving `CommandRouter` relation from `SessionManager` to `NetworkManager`. Added `HandlerCheck` functional interface to allow for pre-execution checks as both named classes and stateless lambda. Added `CommandHandlerExecutor` to perform defined `HandlerCheck`s and invoke execution of `CommandHandler` if all checks passed. Modified CommandRouter to delegate execution of `HandlerChecks` and `CommandHandler` . Added `UserLoggedInCheck` to perform check if `Session` is associated with `User`, i.e. logged in. Modified guide on adding a command aswell as the deep-dive with the new components. Closes #57
lars.winzer commented 2026-04-08 18:30:36 +02:00 (Migrated from git.scicore.unibas.ch)

Somehow the changed filename was not pushed.

Somehow the changed filename was not pushed.
lars.winzer commented 2026-04-08 18:31:46 +02:00 (Migrated from git.scicore.unibas.ch)

added 1 commit

  • e23a9817 - Refactor: Rename file to match class name

Compare with previous version

added 1 commit <ul><li>e23a9817 - Refactor: Rename file to match class name</li></ul> [Compare with previous version](/cs108-fs26/Gruppe-13/-/merge_requests/86/diffs?diff_id=14367&start_sha=1b3ba0000a1048c1e7ce844357b68e60d5f1ade9)
lars.winzer (Migrated from git.scicore.unibas.ch) scheduled this pull request to auto merge when all checks succeed 2026-04-08 18:33:17 +02:00
lars.winzer commented 2026-04-08 18:54:16 +02:00 (Migrated from git.scicore.unibas.ch)

aborted the automatic merge because the source branch was updated. Learn more.

aborted the automatic merge because the source branch was updated. [Learn more](https://git.scicore.unibas.ch/help/ci/pipelines/merge_trains.md#merge-request-dropped-from-the-merge-train).
lars.winzer commented 2026-04-08 18:54:16 +02:00 (Migrated from git.scicore.unibas.ch)

added 1 commit

  • 3de20e3d - Docs: Remove unnecessary generic type parameter in JavaDoc from execute method...

Compare with previous version

added 1 commit <ul><li>3de20e3d - Docs: Remove unnecessary generic type parameter in JavaDoc from execute method...</li></ul> [Compare with previous version](/cs108-fs26/Gruppe-13/-/merge_requests/86/diffs?diff_id=14369&start_sha=e23a9817e287c0e7a6b98877707c15a2bf3ef592)
lars.winzer commented 2026-04-08 18:58:21 +02:00 (Migrated from git.scicore.unibas.ch)

mentioned in commit 795830cf02

mentioned in commit 795830cf02fb7c902b20839e55719235e53fe9ba
lars.winzer (Migrated from git.scicore.unibas.ch) merged commit 795830cf02 into main 2026-04-08 18:58:21 +02:00
This repo is archived. You cannot comment on pull requests.
No Reviewers
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: University-of-Basel-Studentprojects/Programmierprojekt#242