import de.juplo.kafka.chat.backend.domain.Chatroom;
import de.juplo.kafka.chat.backend.domain.ChatroomFactory;
-import de.juplo.kafka.chat.backend.domain.PersistenceStrategy;
import lombok.RequiredArgsConstructor;
+import java.util.LinkedHashMap;
import java.util.UUID;
@RequiredArgsConstructor
-public class InMemoryChatroomFactory implements ChatroomFactory<InMemoryPersistenceStrategy>
+public class InMemoryChatroomFactory implements ChatroomFactory<InMemoryChatroomService>
{
+ private final int bufferSize;
+
+
@Override
public Chatroom createChatroom(UUID id, String name)
{
- InMemoryPersistenceStrategy persistenceStrategy =
- new InMemoryPersistenceStrategy(new LinkedHashMap<>());
- return new Chatroom(id, name, persistenceStrategy);
+ InMemoryChatroomService chatroomService =
+ new InMemoryChatroomService(new LinkedHashMap<>());
+ return new Chatroom(id, name, chatroomService, bufferSize);
}
- @Override
public Chatroom restoreChatroom(
UUID id,
String name,
- InMemoryPersistenceStrategy persistenceStrategy)
+ InMemoryChatroomService chatroomService)
{
- return new Chatroom(id, name, persistenceStrategy);
+ return new Chatroom(id, name, chatroomService, bufferSize);
}
}