1 package de.juplo.kafka.chat.backend.persistence.storage.files;
3 import com.fasterxml.jackson.databind.ObjectMapper;
4 import de.juplo.kafka.chat.backend.ChatBackendProperties;
5 import de.juplo.kafka.chat.backend.persistence.StorageStrategy;
6 import de.juplo.kafka.chat.backend.persistence.inmemory.InMemoryChatRoomService;
7 import org.springframework.context.annotation.Bean;
8 import org.springframework.context.annotation.Configuration;
10 import java.nio.file.Paths;
11 import java.time.Clock;
15 public class FilesStorageConfiguration
18 public StorageStrategy storageStrategy(
19 ChatBackendProperties properties,
23 return new FilesStorageStrategy(
24 Paths.get(properties.getStorageDirectory()),
26 properties.getChatroomBufferSize(),
27 messageFlux -> new InMemoryChatRoomService(messageFlux),