aboutsummaryrefslogtreecommitdiff
path: root/simpleSigning/src/main/java/at/gv/egiz/simpleSigning/cfg/Configuration.java
diff options
context:
space:
mode:
Diffstat (limited to 'simpleSigning/src/main/java/at/gv/egiz/simpleSigning/cfg/Configuration.java')
-rw-r--r--simpleSigning/src/main/java/at/gv/egiz/simpleSigning/cfg/Configuration.java68
1 files changed, 68 insertions, 0 deletions
diff --git a/simpleSigning/src/main/java/at/gv/egiz/simpleSigning/cfg/Configuration.java b/simpleSigning/src/main/java/at/gv/egiz/simpleSigning/cfg/Configuration.java
new file mode 100644
index 0000000..7b22bc3
--- /dev/null
+++ b/simpleSigning/src/main/java/at/gv/egiz/simpleSigning/cfg/Configuration.java
@@ -0,0 +1,68 @@
+package at.gv.egiz.simpleSigning.cfg;
+
+import java.io.FileInputStream;
+import java.util.Properties;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class Configuration {
+
+ public static final String CONF_FILE = "simpleSign.config";
+
+ public static final String PUBLIC_HOST = "publichost";
+ public static final String PUBLIC_CONTEXT = "publiccontext";
+ public static final String PDF_AS_LOCATION = "pdfasurl";
+ public static final String LOG4J_FILE = "log4j";
+
+ private static final Logger logger = LoggerFactory.getLogger(Configuration.class);
+
+ private static Properties properties = new Properties();
+
+ public static void configure() {
+
+ String config = System.getProperty(CONF_FILE);
+
+ if(config == null) {
+ logger.error("No web configuration provided! Please specify: " + CONF_FILE);
+ throw new RuntimeException("No web configuration provided! Please specify: " + CONF_FILE);
+ }
+
+ properties.clear();
+
+ try {
+ properties.load(new FileInputStream(config));
+ } catch (Exception e) {
+ logger.error("Failed to load configuration: " + e.getMessage());
+ throw new RuntimeException(e);
+ }
+ }
+
+ private static String getStringValue(String configKey, String defaultValue) {
+ String value = properties.getProperty(configKey);
+ if(value == null) {
+ value = defaultValue;
+ }
+ return value;
+ }
+
+ public static String getPublicHost() {
+ return getStringValue(PUBLIC_HOST, "http://demo.egiz.gv.at");
+ }
+
+ public static String getPublicContext() {
+ return getStringValue(PUBLIC_CONTEXT, "/signSimple");
+ }
+
+ public static String getPublicUrl() {
+ return getPublicHost() + getPublicContext();
+ }
+
+ public static String getPDFAsLocation() {
+ return getStringValue(PDF_AS_LOCATION, "http://demo.egiz.gv.at/pdf-as-web");
+ }
+
+ public static String getLog4J() {
+ return getStringValue(LOG4J_FILE, "log4j.properties");
+ }
+}