Read flags from env variables 73/66973/1
authorFilip Krzywka <filip.krzywka@nokia.com>
Mon, 17 Sep 2018 11:22:41 +0000 (13:22 +0200)
committerFilip Krzywka <filip.krzywka@nokia.com>
Mon, 17 Sep 2018 11:22:41 +0000 (13:22 +0200)
The application configuration should be read from command line
options as well as from environment variables. The priority: cmd-line over env over defaults.

Change-Id: Ib62d5d68003a006901d9be8a81fca354def8fea4
Issue-ID: DCAEGEN2-748
Signed-off-by: Filip Krzywka <filip.krzywka@nokia.com>
hv-collector-utils/src/main/kotlin/org/onap/dcae/collectors/veshv/utils/commandline/ArgBasedConfiguration.kt

index da6f2d0..44d425e 100644 (file)
@@ -74,7 +74,8 @@ abstract class ArgBasedConfiguration<T>(private val parser: CommandLineParser) {
             optionValue(cmdLineOpt)
 
     protected fun CommandLine.hasOption(cmdLineOpt: CommandLineOption): Boolean =
-            this.hasOption(cmdLineOpt.option.opt)
+            this.hasOption(cmdLineOpt.option.opt) ||
+                    System.getenv(cmdLineOpt.environmentVariableName()) != null
 
     protected fun stringPathToPath(path: String): Path = Paths.get(File(path).toURI())