aboutsummaryrefslogtreecommitdiff
path: root/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
diff options
context:
space:
mode:
authorThomas Lenz <tlenz@iaik.tugraz.at>2013-07-26 17:07:15 +0200
committerThomas Lenz <tlenz@iaik.tugraz.at>2013-07-26 17:07:15 +0200
commit99694b29f82f858f5b6163e6a3d6c11caaeb487e (patch)
treeb46883533cd71c9f47047c38b5c43469a311a731 /id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
parentcc2e2e4ecf5bd8c4bbe16edba5a7d63fa808adcb (diff)
downloadmoa-id-spss-99694b29f82f858f5b6163e6a3d6c11caaeb487e.tar.gz
moa-id-spss-99694b29f82f858f5b6163e6a3d6c11caaeb487e.tar.bz2
moa-id-spss-99694b29f82f858f5b6163e6a3d6c11caaeb487e.zip
Configuration Web-Application
Diffstat (limited to 'id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java')
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java80
1 files changed, 80 insertions, 0 deletions
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
new file mode 100644
index 000000000..07f599284
--- /dev/null
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
@@ -0,0 +1,80 @@
+package at.gv.egovernment.moa.id.configuration.config;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.Properties;
+
+import at.gv.egovernment.moa.id.commons.db.ConfigurationDBUtils;
+import at.gv.egovernment.moa.id.commons.db.ex.MOADatabaseException;
+import at.gv.egovernment.moa.id.configuration.exception.ConfigurationException;
+import at.gv.egovernment.moa.logging.Logger;
+
+
+public class ConfigurationProvider {
+
+ private static final String SYSTEM_PROP_CONFIG = "moa.id.webconfig";
+
+ private static ConfigurationProvider instance;
+ private Properties props;
+
+ public static ConfigurationProvider getInstance() throws ConfigurationException {
+ if (instance == null) {
+ instance = new ConfigurationProvider();
+ }
+
+ return instance;
+ }
+
+ private ConfigurationProvider() throws ConfigurationException {
+ inizialize();
+ }
+
+ private void inizialize() throws ConfigurationException {
+
+ String configFileName = System.getProperty(SYSTEM_PROP_CONFIG);
+
+ if (configFileName == null) {
+ throw new ConfigurationException("config.01");
+ }
+ Logger.info("Loading MOA-ID-AUTH configuration " + configFileName);
+
+ //Initial Hibernate Framework
+ Logger.trace("Initializing Hibernate framework.");
+
+ //Load MOAID-2.0 properties file
+ File propertiesFile = new File(configFileName);
+ FileInputStream fis;
+ props = new Properties();
+
+
+ try {
+ fis = new FileInputStream(propertiesFile);
+ props.load(fis);
+
+ // initialize hibernate
+ synchronized (ConfigurationProvider.class) {
+
+ //Initial config Database
+ ConfigurationDBUtils.initHibernate(props);
+ }
+ Logger.trace("Hibernate initialization finished.");
+
+
+
+ } catch (FileNotFoundException e) {
+ throw new ConfigurationException("config.01", e);
+ } catch (IOException e) {
+ throw new ConfigurationException("config.02", e);
+ } catch (MOADatabaseException e) {
+ throw new ConfigurationException("config.03", e);
+ }
+
+ }
+
+ public boolean isLoginDeaktivated() {
+ String result = props.getProperty("general.login.deaktivate", "false");
+ return Boolean.parseBoolean(result);
+ }
+}