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.ChatHomeService;
5 import lombok.RequiredArgsConstructor;
7 import java.time.Clock;
8 import java.util.LinkedHashMap;
12 @RequiredArgsConstructor
13 public class InMemoryChatHomeService implements ChatHomeService<InMemoryChatRoomService>
15 private final Clock clock;
16 private final int bufferSize;
20 public ChatRoom createChatroom(UUID id, String name)
22 InMemoryChatRoomService service =
23 new InMemoryChatRoomService(new LinkedHashMap<>());
24 return new ChatRoom(id, name, clock, service, bufferSize);
27 public ChatRoom restoreChatroom(
30 InMemoryChatRoomService service)
32 return new ChatRoom(id, name, clock, service, bufferSize);