summaryrefslogtreecommitdiff
path: root/src/main/java/org/luxons
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/luxons')
-rw-r--r--src/main/java/org/luxons/sevenwonders/repositories/LobbyRepository.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/main/java/org/luxons/sevenwonders/repositories/LobbyRepository.java b/src/main/java/org/luxons/sevenwonders/repositories/LobbyRepository.java
index dce824ad..8f305791 100644
--- a/src/main/java/org/luxons/sevenwonders/repositories/LobbyRepository.java
+++ b/src/main/java/org/luxons/sevenwonders/repositories/LobbyRepository.java
@@ -35,17 +35,25 @@ public class LobbyRepository {
return lobby;
}
- public Lobby find(long lobbyId) {
+ public Lobby find(long lobbyId) throws LobbyNotFoundException {
Lobby lobby = lobbies.get(lobbyId);
if (lobby == null) {
- throw new LobbyNotFoundException(String.valueOf(lobbyId));
+ throw new LobbyNotFoundException(lobbyId);
+ }
+ return lobby;
+ }
+
+ public Lobby remove(long lobbyId) throws LobbyNotFoundException {
+ Lobby lobby = lobbies.remove(lobbyId);
+ if (lobby == null) {
+ throw new LobbyNotFoundException(lobbyId);
}
return lobby;
}
public static class LobbyNotFoundException extends RuntimeException {
- LobbyNotFoundException(String name) {
- super("Lobby not found for game '" + name + "'");
+ LobbyNotFoundException(long id) {
+ super("Lobby not found for id '" + id + "'");
}
}
}
bgstack15