From 7a3a323212a2bf18073b8b34f8b66c3381552c4f Mon Sep 17 00:00:00 2001 From: Simon Grimme <9295182+grimsi@users.noreply.github.com> Date: Sat, 13 Aug 2022 11:19:36 +0200 Subject: [PATCH] [untested] Set db and cache path from first library root --- ...cureProperties.java => CustomConfiguratioLoader.java} | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) rename backend/src/main/java/de/grimsi/gameyfin/config/{SecureProperties.java => CustomConfiguratioLoader.java} (64%) diff --git a/backend/src/main/java/de/grimsi/gameyfin/config/SecureProperties.java b/backend/src/main/java/de/grimsi/gameyfin/config/CustomConfiguratioLoader.java similarity index 64% rename from backend/src/main/java/de/grimsi/gameyfin/config/SecureProperties.java rename to backend/src/main/java/de/grimsi/gameyfin/config/CustomConfiguratioLoader.java index 3140b37..467435f 100644 --- a/backend/src/main/java/de/grimsi/gameyfin/config/SecureProperties.java +++ b/backend/src/main/java/de/grimsi/gameyfin/config/CustomConfiguratioLoader.java @@ -9,13 +9,20 @@ import org.springframework.core.io.Resource; import org.springframework.core.io.support.PropertiesLoaderUtils; import java.util.Objects; +import java.util.Properties; @Configuration -public class SecureProperties { +public class CustomConfiguratioLoader { @Autowired public void setConfigurableEnvironment(ConfigurableEnvironment env) { try { + String firstLibraryPath = env.resolvePlaceholders("gameyfin.root").split(",")[0]; + Properties props = new Properties(); + props.setProperty("gameyfin.db", "%s/.gameyfin/db".formatted(firstLibraryPath)); + props.setProperty("gameyfin.cache", "%s/.gameyfin/cache".formatted(firstLibraryPath)); + env.getPropertySources().addFirst(new PropertiesPropertySource("dynamicallyLoadedGameyfinProperties", props)); + Resource resource = new ClassPathResource("/config/secure.yml"); env.getPropertySources().addFirst(new PropertiesPropertySource(Objects.requireNonNull(resource.getFilename()), PropertiesLoaderUtils.loadProperties(resource))); } catch (Exception ex) {