Introduced a new option called sysargs to bootstrap.properties to allow the setting of system properties during the bootstrap setup

Usage: sysargs = [key1]:[val1], [key2]:[val2], [key3]
This commit is contained in:
vsolanki
2018-11-19 09:07:01 -05:00
parent 3b888a72b7
commit 901b1c03e2
@@ -53,7 +53,7 @@ public final class EnvConfig {
String appDir = null, appDirProv = null;
String appId = null, appIdProv = null;
String appBase = null, appBaseProv = null;
String[] sysargs;
// start with bootstrap.properties config, if avaialble
try {
ResourceBundle bundle = ResourceBundle.getBundle("bootstrap");
@@ -74,6 +74,22 @@ public final class EnvConfig {
appBase = bundle.getString("appbase");
appBaseProv = "bootstrap.properties";
}
// Set system properties. Should be in the form:
// sysargs = [key1]:[val1] , [key2]:[val2], [key3]
if (bundle.containsKey("sysargs")) {
sysargs = bundle.getString("sysargs").split(",");
for (String sysarg : sysargs) {
String[] arg_value = sysarg.trim().split(":", 2);
if(arg_value.length == 2){
System.setProperty(arg_value[0], arg_value[1]);
}else if(arg_value.length == 1) {
System.setProperty(arg_value[0], "");
}
}
}
} catch (MissingResourceException e) {
// bootstrap.properties is optional; no need for a warning
}