diff options
author | Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> | 2015-03-26 10:04:08 +0100 |
---|---|---|
committer | Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> | 2015-03-26 10:04:08 +0100 |
commit | dfde473ef88f8be7873385b1ff3357c1f79afe73 (patch) | |
tree | 5e6873399f8519944a1a20c6ed1ba2d2795f429e /pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/ConfigurationOverwrite.java | |
parent | f179c8db3574d03bb1b6b5be1bd86c9ea04073ad (diff) | |
download | pdf-as-4-dfde473ef88f8be7873385b1ff3357c1f79afe73.tar.gz pdf-as-4-dfde473ef88f8be7873385b1ff3357c1f79afe73.tar.bz2 pdf-as-4-dfde473ef88f8be7873385b1ff3357c1f79afe73.zip |
added Whitelist for external configuration overwrites
Diffstat (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/ConfigurationOverwrite.java')
-rw-r--r-- | pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/ConfigurationOverwrite.java | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/ConfigurationOverwrite.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/ConfigurationOverwrite.java new file mode 100644 index 00000000..3bf20bf4 --- /dev/null +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/ConfigurationOverwrite.java @@ -0,0 +1,35 @@ +package at.gv.egiz.pdfas.web.helper; + +import java.util.Iterator; +import java.util.Map; +import java.util.Map.Entry; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import at.gv.egiz.pdfas.lib.api.Configuration; +import at.gv.egiz.pdfas.web.config.WebConfiguration; + +public class ConfigurationOverwrite { + + private static final Logger logger = LoggerFactory + .getLogger(ConfigurationOverwrite.class); + + public static void overwriteConfiguration(Map<String, String> overwrite, + Configuration config) { + if (WebConfiguration.isAllowExtOverwrite() && overwrite != null && config != null) { + Iterator<Entry<String, String>> entryIt = overwrite.entrySet() + .iterator(); + while (entryIt.hasNext()) { + Entry<String, String> entry = entryIt.next(); + if (WebConfiguration.isOverwriteAllowed(entry.getKey())) { + config.setValue(entry.getKey(), entry.getValue()); + } else { + logger.warn( + "External component tried to overwrite cfg {}. This is not in the whitelist!", + entry.getKey()); + } + } + } + } +} |