refactor: DRY for logging-category from io.projectreactor
[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 import reactor.core.publisher.Mono;
10
11 import java.util.UUID;
12
13
14 @Slf4j
15 public class NoStorageStorageStrategy implements StorageStrategy
16 {
17   public Mono<Void> write(ChatHomeService chatHomeService)
18   {
19     return Mono
20         .<Void>empty()
21         .doOnSuccess(empty -> log.info("Storage is disabled: Not storing {}", chatHomeService));
22
23   }
24
25   public Flux<ChatRoomInfo> writeChatRoomInfo(Flux<ChatRoomInfo> chatRoomInfoFlux)
26   {
27     return chatRoomInfoFlux;
28   }
29
30   @Override
31   public Flux<ChatRoomInfo> readChatRoomInfo()
32   {
33     return Flux.empty();
34   }
35
36   @Override
37   public Flux<Message> writeChatRoomData(UUID chatRoomId, Flux<Message> messageFlux)
38   {
39     return messageFlux;
40   }
41
42   @Override
43   public Flux<Message> readChatRoomData(UUID chatRoomId)
44   {
45     return Flux.empty();
46   }
47 }