NEU
[demos/kafka/chat] / src / main / java / de / juplo / kafka / chat / backend / persistence / kafka / ChatRoomTo.java
1 package de.juplo.kafka.chat.backend.persistence.kafka;
2
3 import de.juplo.kafka.chat.backend.domain.ChatRoom;
4 import lombok.AllArgsConstructor;
5 import lombok.Data;
6 import lombok.NoArgsConstructor;
7
8 import java.time.Clock;
9 import java.util.UUID;
10
11
12 @Data
13 @NoArgsConstructor
14 @AllArgsConstructor(staticName = "of")
15 public class ChatRoomTo
16 {
17   private UUID id;
18   private String name;
19   private int shard;
20
21   public ChatRoom toChatRoom(
22       Clock clock,
23       KafkaChatRoomService service,
24       int bufferSize)
25   {
26     return new ChatRoom(id, name, shard, clock, service, bufferSize);
27   }
28
29   public static ChatRoomTo from(ChatRoom chatRoom)
30   {
31     return ChatRoomTo.of(chatRoom.getId(), chatRoom.getName(), chatRoom.getShard());
32   }
33 }