1
2
3
4
5
6 package org.tailormap.api.configuration;
7
8 import ch.rasc.sse.eventbus.config.EnableSseEventBus;
9 import java.util.Locale;
10 import org.springframework.beans.factory.annotation.Value;
11 import org.springframework.boot.context.properties.ConfigurationProperties;
12 import org.springframework.boot.context.properties.EnableConfigurationProperties;
13 import org.springframework.context.annotation.Bean;
14 import org.springframework.context.annotation.Configuration;
15 import org.springframework.scheduling.annotation.EnableScheduling;
16 import org.springframework.web.servlet.LocaleResolver;
17 import org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver;
18
19 @Configuration
20 @EnableConfigurationProperties
21 @ConfigurationProperties(prefix = "tailormap-api")
22 @EnableSseEventBus
23 @EnableScheduling
24 public class TailormapConfig {
25 private int timeout;
26
27 @Value("${tailormap-api.default-language:en}")
28 private String defaultLanguage;
29
30 public int getTimeout() {
31 return timeout;
32 }
33
34 public TailormapConfig setTimeout(int timeout) {
35 this.timeout = timeout;
36 return this;
37 }
38
39 @Bean
40 public LocaleResolver localeResolver() {
41 AcceptHeaderLocaleResolver resolver = new AcceptHeaderLocaleResolver();
42 resolver.setDefaultLocale(Locale.of(defaultLanguage));
43 return resolver;
44 }
45 }