Конфигурация Typesafe: получить как карту - PullRequest
1 голос
/ 13 июня 2019
googlesheets{
 dmkb_sheet = "1xEC8CPlKn654321wcoS_JB12345cPPiaA0M"
 other_sheet = "123isS0M30TH3R1D"
}

Я хотел бы использовать что-то вроде myConfig.getAsMap("googlesheets") и получить две вложенные записи в качестве карты. Такой метод не существует. Так какой же самый простой способ загрузить две вложенные записи в виде карты?

Ответы [ 2 ]

4 голосов
/ 13 июня 2019

Для некоторого определения easy вы можете использовать что-то вроде этого:

val config = conf.atKey("googlesheets")
config.root.keySet.asScala.map(key ⇒ key → config.getString(key)).toMap

Я бы сказал, что было бы еще проще использовать библиотеку для сопоставления конфигураций с классами дел, например pureconfig

1 голос
/ 13 июня 2019

ОК, это было легко.

myConfig.getConfig("googlesheets").entrySet() делает трюк

(я был зациклен на методе с префиксом get, поэтому пропустил его)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...