From 5b70fb89effb93db68ab78298fdb4064a7795da3 Mon Sep 17 00:00:00 2001 From: Lars Simon Winzer Date: Thu, 2 Apr 2026 14:11:14 +0200 Subject: [PATCH 1/4] Add: Implement methods to find users by UserId and username --- .../cs108/casono/server/domain/user/UserRegistry.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java index adb1abe..6959c22 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java @@ -1,6 +1,8 @@ package ch.unibas.dmi.dbis.cs108.casono.server.domain.user; import ch.unibas.dmi.dbis.cs108.casono.server.network.sessions.SessionId; + +import java.lang.classfile.attribute.UnknownAttribute; import java.util.Collection; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; @@ -95,6 +97,14 @@ public class UserRegistry { return Optional.ofNullable(bySessionId.get(sessionId)); } + public Optional findByUserId(UserId userId) { + return Optional.ofNullable(byId.get(userId)); + } + + public Optional findByUsername(String username) { + return Optional.ofNullable(byName.get(username)); + } + /** * Returns all currently registered users. * -- 2.52.0 From f91fa698f3ec0e9ccf326e23e531a74e1a307a47 Mon Sep 17 00:00:00 2001 From: Lars Simon Winzer Date: Thu, 2 Apr 2026 14:12:13 +0200 Subject: [PATCH 2/4] Refactor: Rename user lookup methods from 'find' to 'get' prefix --- .../dbis/cs108/casono/server/domain/user/UserRegistry.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java index 6959c22..9220afe 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java @@ -93,15 +93,15 @@ public class UserRegistry { * @param sessionId the session ID to look up * @return an Optional containing the user, or empty if no user is associated with this session */ - public Optional findBySessionId(SessionId sessionId) { + public Optional getBySessionId(SessionId sessionId) { return Optional.ofNullable(bySessionId.get(sessionId)); } - public Optional findByUserId(UserId userId) { + public Optional getByUserId(UserId userId) { return Optional.ofNullable(byId.get(userId)); } - public Optional findByUsername(String username) { + public Optional getByUsername(String username) { return Optional.ofNullable(byName.get(username)); } -- 2.52.0 From a9878da3f2938177de19e1c70272ed0a709c194e Mon Sep 17 00:00:00 2001 From: Lars Simon Winzer Date: Thu, 2 Apr 2026 14:17:45 +0200 Subject: [PATCH 3/4] Docs: Write JavaDoc for changed components --- .../server/domain/user/UserRegistry.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java index 9220afe..51b6894 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java @@ -88,19 +88,31 @@ public class UserRegistry { } /** - * Looks up a user by their session ID. + * Looks up a user by their {@link SessionId}. * - * @param sessionId the session ID to look up - * @return an Optional containing the user, or empty if no user is associated with this session + * @param sessionId the SessionId to look up + * @return an Optional containing the {@link User}, or empty if no user is associated with this SessionId */ public Optional getBySessionId(SessionId sessionId) { return Optional.ofNullable(bySessionId.get(sessionId)); } + /** + * Looks up a user by their {@link UserId}. + * + * @param userId the UserId to look up + * @return an Optional containing the {@link User}, or empty if no user is associated with this UserId + */ public Optional getByUserId(UserId userId) { return Optional.ofNullable(byId.get(userId)); } + /** + * Looks up a user by their username. + * + * @param username the username to look up + * @return an Optional containing the {@link User}, or empty if no user is associated with this username + */ public Optional getByUsername(String username) { return Optional.ofNullable(byName.get(username)); } -- 2.52.0 From 415ad754df617e169d64d26a9f047e69ec08f0de Mon Sep 17 00:00:00 2001 From: Lars Simon Winzer Date: Thu, 2 Apr 2026 14:18:09 +0200 Subject: [PATCH 4/4] Style: Apply Spotless --- .../cs108/casono/server/domain/user/UserRegistry.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java index 51b6894..bc0cd36 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/casono/server/domain/user/UserRegistry.java @@ -1,8 +1,6 @@ package ch.unibas.dmi.dbis.cs108.casono.server.domain.user; import ch.unibas.dmi.dbis.cs108.casono.server.network.sessions.SessionId; - -import java.lang.classfile.attribute.UnknownAttribute; import java.util.Collection; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; @@ -91,7 +89,8 @@ public class UserRegistry { * Looks up a user by their {@link SessionId}. * * @param sessionId the SessionId to look up - * @return an Optional containing the {@link User}, or empty if no user is associated with this SessionId + * @return an Optional containing the {@link User}, or empty if no user is associated with this + * SessionId */ public Optional getBySessionId(SessionId sessionId) { return Optional.ofNullable(bySessionId.get(sessionId)); @@ -101,7 +100,8 @@ public class UserRegistry { * Looks up a user by their {@link UserId}. * * @param userId the UserId to look up - * @return an Optional containing the {@link User}, or empty if no user is associated with this UserId + * @return an Optional containing the {@link User}, or empty if no user is associated with this + * UserId */ public Optional getByUserId(UserId userId) { return Optional.ofNullable(byId.get(userId)); @@ -111,7 +111,8 @@ public class UserRegistry { * Looks up a user by their username. * * @param username the username to look up - * @return an Optional containing the {@link User}, or empty if no user is associated with this username + * @return an Optional containing the {@link User}, or empty if no user is associated with this + * username */ public Optional getByUsername(String username) { return Optional.ofNullable(byName.get(username)); -- 2.52.0