Merge pull request #160 from vatsal22/master

Introduced a new option called sysargs to bootstrap.properties...
This commit is contained in:
Michael Bayne
2018-11-26 12:43:34 -08:00
committed by GitHub
2 changed files with 18 additions and 2 deletions
@@ -1486,7 +1486,7 @@ public class Application
*
* @param sigVersion if {@code 0} no validation will be performed, if {@code > 0} then this
* should indicate the version of the digest file being validated which indicates which
* algorithm to use to verify the signature. See {@link Digest#VESRION}.
* algorithm to use to verify the signature. See {@link Digest#VERSION}.
*/
protected void downloadControlFile (String path, int sigVersion)
throws IOException
@@ -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");
@@ -70,6 +70,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
}