W mojej aplikacji Scala mam taką konfigurację:
datasets {
dataset1 = "path1"
dataset2 = "path2"
dataset3 = "path3"
}
Czy muszę powtarzać wszystkie zestawy danych, aby uzyskać mapę [zestaw danych, ścieżkę]?
Odpowiedzi:
2 dla odpowiedzi № 1Możesz zadzwonić entrySet()
po uzyskaniu konfiguracji getConfig()
import scala.collection.JavaConversions._
val config = ConfigFactory.load()
val datasets = config.getConfig("datasets")
val configMap = datasets.entrySet().toList.map(
entry => (entry.getKey, entry.getValue)
).toMap
Skończysz z Map[String, ConfigValue]
.
0 dla odpowiedzi nr 2
Możesz spróbować mojego opakowania scala https://github.com/andr83/scalaconfig - obsługuje czytanie rodzimych typów scala bezpośrednio z obiektu konfiguracyjnego:
val datasets = config.as[Map[String, String]]("datasets")