1 package de.juplo.kafka.chat.backend.persistence;
3 import de.juplo.kafka.chat.backend.domain.Chatroom;
4 import de.juplo.kafka.chat.backend.domain.ChatroomFactory;
5 import lombok.RequiredArgsConstructor;
7 import java.util.LinkedHashMap;
11 @RequiredArgsConstructor
12 public class InMemoryChatroomFactory implements ChatroomFactory<InMemoryPersistenceStrategy>
14 private final int bufferSize;
18 public Chatroom createChatroom(UUID id, String name)
20 InMemoryPersistenceStrategy persistenceStrategy =
21 new InMemoryPersistenceStrategy(new LinkedHashMap<>());
22 return new Chatroom(id, name, persistenceStrategy, bufferSize);
26 public Chatroom restoreChatroom(
29 InMemoryPersistenceStrategy persistenceStrategy)
31 return new Chatroom(id, name, persistenceStrategy, bufferSize);