X-Git-Url: http://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fchat%2Fbackend%2Fdomain%2FChatHome.java;fp=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fchat%2Fbackend%2Fdomain%2FChatHome.java;h=557cf75f6ccd82c79b29807c23f03f276a6b5790;hb=e1ad66ecb1dc386bb357e364a05b071ec45920e1;hp=6091c0c5afd1a8288a7951be0771789f85ef5cff;hpb=5df111ec5b6442114b90cc2f1ad45ae73a66e69b;p=demos%2Fkafka%2Fchat diff --git a/src/main/java/de/juplo/kafka/chat/backend/domain/ChatHome.java b/src/main/java/de/juplo/kafka/chat/backend/domain/ChatHome.java index 6091c0c5..557cf75f 100644 --- a/src/main/java/de/juplo/kafka/chat/backend/domain/ChatHome.java +++ b/src/main/java/de/juplo/kafka/chat/backend/domain/ChatHome.java @@ -1,14 +1,29 @@ package de.juplo.kafka.chat.backend.domain; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; -import java.util.UUID; +import java.util.*; -public interface ChatHome +@RequiredArgsConstructor +@Slf4j +public class ChatHome { - Mono getChatRoom(UUID id); + private final ChatHomeService service; - Flux getChatRooms(); + + public Mono getChatRoom(UUID id) + { + return service + .getChatRoom(id) + .switchIfEmpty(Mono.error(() -> new UnknownChatroomException(id))); + } + + public Flux getChatRooms() + { + return service.getChatRooms(); + } }