diff options
author | Christoph Krey <c@ckrey.de> | 2018-04-16 10:45:11 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-16 10:45:11 +0200 |
commit | 3a602dd133b533cc69d5986d64a00fb3ed670f75 (patch) | |
tree | 97ff753db310a49ae7e53240b1db07fb8475679e /src/org/traccar/Config.java | |
parent | 232de5f0daef98f31b28d177d991fdbfa191f195 (diff) | |
parent | 6d4b8df25c7e942b9ad594db9444fe15bcb16be9 (diff) | |
download | traccar-server-3a602dd133b533cc69d5986d64a00fb3ed670f75.tar.gz traccar-server-3a602dd133b533cc69d5986d64a00fb3ed670f75.tar.bz2 traccar-server-3a602dd133b533cc69d5986d64a00fb3ed670f75.zip |
Merge pull request #4 from traccar/master
upgrade to current master
Diffstat (limited to 'src/org/traccar/Config.java')
-rw-r--r-- | src/org/traccar/Config.java | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/org/traccar/Config.java b/src/org/traccar/Config.java index 43f4632da..370123ae1 100644 --- a/src/org/traccar/Config.java +++ b/src/org/traccar/Config.java @@ -18,6 +18,7 @@ package org.traccar; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; +import java.util.InvalidPropertiesFormatException; import java.util.Properties; public class Config { @@ -27,22 +28,26 @@ public class Config { private boolean useEnvironmentVariables; void load(String file) throws IOException { - Properties mainProperties = new Properties(); - try (InputStream inputStream = new FileInputStream(file)) { - mainProperties.loadFromXML(inputStream); - } + try { + Properties mainProperties = new Properties(); + try (InputStream inputStream = new FileInputStream(file)) { + mainProperties.loadFromXML(inputStream); + } - String defaultConfigFile = mainProperties.getProperty("config.default"); - if (defaultConfigFile != null) { - try (InputStream inputStream = new FileInputStream(defaultConfigFile)) { - properties.loadFromXML(inputStream); + String defaultConfigFile = mainProperties.getProperty("config.default"); + if (defaultConfigFile != null) { + try (InputStream inputStream = new FileInputStream(defaultConfigFile)) { + properties.loadFromXML(inputStream); + } } - } - properties.putAll(mainProperties); // override defaults + properties.putAll(mainProperties); // override defaults - useEnvironmentVariables = Boolean.parseBoolean(System.getenv("CONFIG_USE_ENVIRONMENT_VARIABLES")) - || Boolean.parseBoolean(properties.getProperty("config.useEnvironmentVariables")); + useEnvironmentVariables = Boolean.parseBoolean(System.getenv("CONFIG_USE_ENVIRONMENT_VARIABLES")) + || Boolean.parseBoolean(properties.getProperty("config.useEnvironmentVariables")); + } catch (InvalidPropertiesFormatException e) { + throw new RuntimeException("Configuration file is not a valid XML document", e); + } } public boolean hasKey(String key) { |