refactor: Fixed return-types of the controller
[demos/kafka/chat] / src / main / java / de / juplo / kafka / chat / backend / persistence / InMemoryChatroomFactory.java
index b2b7f1d..415a71f 100644 (file)
@@ -7,14 +7,23 @@ import lombok.RequiredArgsConstructor;
 
 import java.util.UUID;
 
+
 @RequiredArgsConstructor
-public class InMemoryChatroomFactory implements ChatroomFactory
+public class InMemoryChatroomFactory implements ChatroomFactory<InMemoryPersistenceStrategy>
 {
-  private final PersistenceStrategy persistenceStrategy;
-
-
   @Override
   public Chatroom createChatroom(UUID id, String name)
+  {
+    InMemoryPersistenceStrategy persistenceStrategy =
+        new InMemoryPersistenceStrategy(new LinkedHashMap<>());
+    return new Chatroom(id, name, persistenceStrategy);
+  }
+
+  @Override
+  public Chatroom restoreChatroom(
+      UUID id,
+      String name,
+      InMemoryPersistenceStrategy persistenceStrategy)
   {
     return new Chatroom(id, name, persistenceStrategy);
   }