refactor: One stream -> using `flatMap` instead of an inner `subscribe`
[demos/kafka/chat] / src / main / java / de / juplo / kafka / chat / backend / storage / nostorage / NoStorageStorageStrategy.java
1 package de.juplo.kafka.chat.backend.storage.nostorage;
2
3 import de.juplo.kafka.chat.backend.domain.ChatHomeService;
4 import de.juplo.kafka.chat.backend.domain.ChatRoomInfo;
5 import de.juplo.kafka.chat.backend.domain.Message;
6 import de.juplo.kafka.chat.backend.implementation.StorageStrategy;
7 import lombok.extern.slf4j.Slf4j;
8 import reactor.core.publisher.Flux;
9
10 import java.util.UUID;
11
12
13 @Slf4j
14 public class NoStorageStorageStrategy implements StorageStrategy
15 {
16   public Flux<ChatRoomInfo> write(ChatHomeService chatHomeService)
17   {
18     return Flux
19         .<ChatRoomInfo>empty()
20         .doOnComplete(() -> log.info("Storage is disabled: Not storing {}", chatHomeService));
21
22   }
23
24   public Flux<ChatRoomInfo> writeChatRoomInfo(Flux<ChatRoomInfo> chatRoomInfoFlux)
25   {
26     return chatRoomInfoFlux;
27   }
28
29   @Override
30   public Flux<ChatRoomInfo> readChatRoomInfo()
31   {
32     return Flux.empty();
33   }
34
35   @Override
36   public Flux<Message> writeChatRoomData(UUID chatRoomId, Flux<Message> messageFlux)
37   {
38     return messageFlux;
39   }
40
41   @Override
42   public Flux<Message> readChatRoomData(UUID chatRoomId)
43   {
44     return Flux.empty();
45   }
46 }