2016-08-29 1 views
0

Ich mag die typesafe config lib aber ich habe noch nicht herausgefunden, ob und wie es möglich wäre, bestimmte Multi-Werte optional zu überschreiben.Optional Override Multi-Wert mit Umgebungsvariable in typsicheren Config-Bibliothek

So etwas wie dies

multi = [ 
    "string" 
    "list" 
] 
multi=${?MULTI_ENV} 

Aber auf diese Weise (wenn die Umgebungsvariablen MULTI_ENV gesetzt "value1,value2" oder "value1 value2" auf beispielsweise) natürlich die ConfigFactory.load().resolve().getStringList("multi") eine Ausnahme auslöst, weil Multi ein einfaches String jetzt ist.

Ich habe versucht multi=[${?MULTI_ENV}] auch, aber das tut nicht den Trick entweder, denn im Fall, dass die MULTI_ENV Variable nicht gesetzt multi wird leer sein.

Es scheint nicht möglich zu sein, ohne zusätzlichen Code, der die Umgebungsvariable überprüfen würde, es von Hand auf List<String> analysieren und den Wert manuell überschreiben config.withValue("multi",myParsedStringList), oder ist es?

Antwort