feat: `UnknownChatroomException` records shard and owned shards
[demos/kafka/chat] / src / main / java / de / juplo / kafka / chat / backend / persistence / inmemory / SimpleChatHome.java
index bdca9b7..f99bc9d 100644 (file)
@@ -13,18 +13,18 @@ import java.util.*;
 @Slf4j
 public class SimpleChatHome implements ChatHome
 {
-  private final ChatHomeService service;
+  private final InMemoryChatHomeService service;
   private final int shard;
 
 
-  public SimpleChatHome(ChatHomeService service, int shard)
+  public SimpleChatHome(InMemoryChatHomeService service, int shard)
   {
     log.info("Created SimpleChatHome for shard {}", shard);
     this.service = service;
     this.shard = shard;
   }
 
-  public SimpleChatHome(ChatHomeService service)
+  public SimpleChatHome(InMemoryChatHomeService service)
   {
     this(service, 0);
   }
@@ -35,7 +35,10 @@ public class SimpleChatHome implements ChatHome
   {
     return service
         .getChatRoom(shard, id)
-        .switchIfEmpty(Mono.error(() -> new UnknownChatroomException(id)));
+        .switchIfEmpty(Mono.error(() -> new UnknownChatroomException(
+            id,
+            shard,
+            service.getOwnedShards())));
   }
 
   @Override