diff artifact-database/src/main/java/de/intevation/artifactdatabase/FactoryBootstrap.java @ 130:147610c43863

The UserFactory got a setup() method that is called while bootstrap. artifacts/trunk@1354 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 02 Mar 2011 07:36:00 +0000
parents 0245a87df368
children f797093c60bd
line wrap: on
line diff
--- a/artifact-database/src/main/java/de/intevation/artifactdatabase/FactoryBootstrap.java	Wed Mar 02 07:28:20 2011 +0000
+++ b/artifact-database/src/main/java/de/intevation/artifactdatabase/FactoryBootstrap.java	Wed Mar 02 07:36:00 2011 +0000
@@ -18,6 +18,7 @@
 import org.apache.log4j.Logger;
 
 import org.w3c.dom.Document;
+import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 
 /**
@@ -62,7 +63,7 @@
      * configuration.
      */
     public static final String USER_FACTORY =
-        "/artfifact-database/factories/user-factory/text()";
+        "/artfifact-database/factories/user-factory";
 
     /**
      * The name of the default user factory.
@@ -263,12 +264,16 @@
     protected void loadUserFactory() {
         logger.info("loading user factory");
 
+        Node factory = Config.getNodeXPath(USER_FACTORY);
+
         String className = Config.getStringXPath(
-            USER_FACTORY, DEFAULT_USER_FACTORY);
+            factory, "text()", DEFAULT_USER_FACTORY);
 
         try {
             Class clazz = Class.forName(className);
             userFactory = (UserFactory) clazz.newInstance();
+
+            userFactory.setup(Config.getConfig(), factory);
         }
         catch (ClassNotFoundException cnfe) {
                 logger.error(cnfe.getLocalizedMessage(), cnfe);

http://dive4elements.wald.intevation.org