Переменные среды обработки в Typesafe Config - PullRequest
0 голосов
/ 29 октября 2018

У меня есть файл конфигурации Typesafe (application.conf). Я хочу переопределить некоторые параметры с помощью системных переменных среды (например, Переопределить конфигурацию с помощью переменных среды в typesafe config ), но я хотел бы внести некоторые изменения в значение переменной среды (например, toLowerCase, заменить ('\', '/'), split ("/"))

Итак, у меня было что-то вроде этого:

# C:\Users\...\project_root\sub_project\src\main\resources\application.conf

foo = {
  bar = "baz"
}

И я изменил это на:

foo = {
  bar = "baz"
  bar = ${?FOO}
}

Но теперь я хочу сделать это:

foo = {
  bar = "baz"
  bar = ${?FOO.toLowerCase}
}

Когда я запускаю sbt update в моем проекте, у меня есть зависимость Typesafe Config:

[info] Resolving com.typesafe#config;1.2.1 ...

1 Ответ

0 голосов
/ 10 ноября 2018

Вместо того, чтобы напрямую обращаться к типам безопасной конфигурации, вы, вероятно, должны определить своего рода интерфейс в модуле утилит вашего проекта и получить доступ к своей конфигурации через этот интерфейс. Таким образом, у вас есть одно централизованное место для получения вашей конфигурации, и это централизованное место может предоставить дополнительную функциональность поверх базового хранения и получения значений конфигурации. Кроме того, вы можете использовать библиотеку, которая находится перед типом безопасной конфигурации, и получать доступ к значениям через эту библиотеку.

...