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>2015-08-14 13:53:00 +0200
committerThomas Lenz <tlenz@iaik.tugraz.at>2015-08-14 13:53:00 +0200
commit456513332389b2dbb7a6d1461f77dda9b7393050 (patch)
tree4d6799366db46f83bb9eb0f7a611d8a08006b697 /id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/config/ConfigurationProvider.java
parent5a15347217fbc8a0b2c1083579f70e527da6f3b5 (diff)
downloadmoa-id-spss-456513332389b2dbb7a6d1461f77dda9b7393050.tar.gz
moa-id-spss-456513332389b2dbb7a6d1461f77dda9b7393050.tar.bz2
moa-id-spss-456513332389b2dbb7a6d1461f77dda9b7393050.zip
use old ConfigTool
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.java130
1 files changed, 102 insertions, 28 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
index 0036645cf..849e81967 100644
--- 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
@@ -29,6 +29,8 @@ import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
+import java.net.URI;
+import java.net.URISyntaxException;
import java.net.URL;
import java.security.KeyStore;
import java.security.KeyStoreException;
@@ -47,19 +49,24 @@ import org.opensaml.DefaultBootstrap;
import org.opensaml.saml2.metadata.provider.HTTPMetadataProvider;
import org.opensaml.xml.parse.BasicParserPool;
import org.opensaml.xml.security.x509.BasicX509Credential;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.support.ClassPathXmlApplicationContext;
-import at.gv.egovernment.moa.id.commons.db.ConfigurationDBUtils;
-import at.gv.egovernment.moa.id.commons.db.dao.config.ChainingModeType;
-import at.gv.egovernment.moa.id.commons.db.ex.MOADatabaseException;
import at.gv.egovernment.moa.id.commons.ex.MOAHttpProtocolSocketFactoryException;
import at.gv.egovernment.moa.id.commons.utils.MOAHttpProtocolSocketFactory;
+import at.gv.egovernment.moa.id.config.webgui.MOAIDConfigurationModul;
import at.gv.egovernment.moa.id.config.webgui.exception.ConfigurationException;
import at.gv.egovernment.moa.id.configuration.Constants;
import at.gv.egovernment.moa.id.configuration.auth.pvp2.MetaDataVerificationFilter;
+import at.gv.egovernment.moa.id.configuration.config.usermanagement.FileBasedUserConfiguration;
import at.gv.egovernment.moa.id.configuration.utils.UserRequestCleaner;
import at.gv.egovernment.moa.util.FileUtils;
import at.gv.egovernment.moa.util.MiscUtil;
+import at.gv.egovernment.moa.id.commons.db.NewConfigurationDBRead;
+
public class ConfigurationProvider {
@@ -82,6 +89,11 @@ public class ConfigurationProvider {
private boolean pvp2logininitialzied = false;
+ private ApplicationContext context = null;
+ private MOAIDConfigurationModul configModule = null;
+ private NewConfigurationDBRead deprecatedDBRead = null;
+ private FileBasedUserConfiguration userManagement = null;
+
public static ConfigurationProvider getInstance() throws ConfigurationException {
if (instance == null) {
@@ -100,34 +112,40 @@ public class ConfigurationProvider {
if (configFileName == null) {
throw new ConfigurationException("config.05");
}
+ try {
+ URI fileURI = new URI(configFileName);
+ File propertiesFile = new File(fileURI);
+
+ // determine the directory of the root config file
+ String rootConfigFileDir = propertiesFile.getParent();
+ configRootDir = new File(rootConfigFileDir).toURI().toURL().toString();;
- // determine the directory of the root config file
- configRootDir = new File(configFileName).getParent();
-
- log.info("Loading MOA-ID-AUTH configuration " + configFileName);
+ log.info("Loading MOA-ID-AUTH configuration " + configFileName);
- //Initial Hibernate Framework
- log.trace("Initializing Hibernate framework.");
+ //Initial Hibernate Framework
+ log.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);
+ //Load MOAID-2.0 properties file
+
+ FileInputStream fis;
+ props = new Properties();
+
+ fis = new FileInputStream(propertiesFile);
+ props.load(fis);
fis.close();
- // initialize hibernate
- synchronized (ConfigurationProvider.class) {
-
- //Initial config Database
- ConfigurationDBUtils.initHibernate(props);
- }
- log.trace("Hibernate initialization finished.");
+ context = new ClassPathXmlApplicationContext(
+ new String[] { "configuration.beans.xml",
+ "moaid.webgui.beans.xml",
+ "moaid.migration.beans.xml",
+ "moaid.configurationtool.beans.xml"
+ });
+ AutowireCapableBeanFactory acbFactory = context.getAutowireCapableBeanFactory();
+ acbFactory.autowireBean(this);
+
+
+ log.info("Hibernate initialization finished.");
DefaultBootstrap.bootstrap();
log.info("OPENSAML initialized");
@@ -143,15 +161,48 @@ public class ConfigurationProvider {
} catch (IOException e) {
throw new ConfigurationException("config.02", new Object[]{configFileName}, e);
- } catch (MOADatabaseException e) {
- throw new ConfigurationException("config.03", e);
-
} catch (org.opensaml.xml.ConfigurationException e) {
throw new ConfigurationException("config.04", e);
+
+ } catch (URISyntaxException e) {
+ throw new ConfigurationException("config.01", new Object[]{configFileName}, e);
}
}
+ @Autowired(required = true)
+ public void setMOAIDConfigurationModul(MOAIDConfigurationModul module) {
+ this.configModule = module;
+ }
+
+
+
+ /**
+ * @param dbRead the dbRead to set
+ */
+ @Autowired(required = true)
+ public void setDbRead(NewConfigurationDBRead dbRead) {
+ this.deprecatedDBRead = dbRead;
+ }
+
+
+
+ /**
+ * @return the deprecatedDBWrite
+ */
+ public FileBasedUserConfiguration getUserManagement() {
+ return userManagement;
+ }
+
+ /**
+ * @param deprecatedDBWrite the deprecatedDBWrite to set
+ */
+ @Autowired(required = true)
+ public void setUserManagement(FileBasedUserConfiguration userManagement) {
+ this.userManagement = userManagement;
+ }
+
+
public String getPublicUrlPreFix(HttpServletRequest request) {
publicURLPreFix = props.getProperty("general.publicURLContext");
@@ -467,6 +518,29 @@ public class ConfigurationProvider {
}
+ /**
+ * @return the context
+ */
+ public ApplicationContext getContext() {
+ return context;
+ }
+
+ /**
+ * @return the configModule
+ */
+ public MOAIDConfigurationModul getConfigModule() {
+ return configModule;
+ }
+
+
+
+ /**
+ * @return the dbRead
+ */
+ public NewConfigurationDBRead getDbRead() {
+ return deprecatedDBRead;
+ }
+
private void initalPVP2Login() throws ConfigurationException {
try {