1 package de.juplo.kafka.chat.backend;
3 import de.juplo.kafka.chat.backend.domain.ChatHomeService;
4 import de.juplo.kafka.chat.backend.implementation.StorageStrategy;
5 import jakarta.annotation.PreDestroy;
6 import org.springframework.beans.factory.annotation.Autowired;
7 import org.springframework.boot.SpringApplication;
8 import org.springframework.boot.autoconfigure.SpringBootApplication;
9 import org.springframework.boot.autoconfigure.data.mongo.MongoReactiveDataAutoConfiguration;
10 import org.springframework.boot.autoconfigure.data.mongo.MongoReactiveRepositoriesAutoConfiguration;
11 import org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration;
12 import org.springframework.web.reactive.config.CorsRegistry;
13 import org.springframework.web.reactive.config.WebFluxConfigurer;
16 @SpringBootApplication(exclude = {
17 MongoReactiveDataAutoConfiguration.class,
18 MongoReactiveRepositoriesAutoConfiguration.class,
19 MongoAutoConfiguration.class })
20 public class ChatBackendApplication implements WebFluxConfigurer
23 ChatBackendProperties properties;
25 ChatHomeService chatHomeService;
27 StorageStrategy storageStrategy;
31 public void addCorsMappings(CorsRegistry registry)
35 .allowedOrigins(properties.getAllowedOrigins());
42 .write(chatHomeService)
46 public static void main(String[] args)
48 SpringApplication.run(ChatBackendApplication.class, args);