You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by ss...@apache.org on 2013/06/10 13:14:25 UTC

git commit: allow configuration override on startup

Updated Branches:
  refs/heads/develop c933437d2 -> 38389201f


allow configuration override on startup


Project: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/commit/38389201
Tree: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/tree/38389201
Diff: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/diff/38389201

Branch: refs/heads/develop
Commit: 38389201f06cf05c075d47a4d82fe4d8a7bcea75
Parents: c933437
Author: Sebastian Schaffert <ss...@apache.org>
Authored: Mon Jun 10 13:14:19 2013 +0200
Committer: Sebastian Schaffert <ss...@apache.org>
Committed: Mon Jun 10 13:14:19 2013 +0200

----------------------------------------------------------------------
 .../servlet/MarmottaPreStartupListener.java     | 21 +++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/38389201/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/servlet/MarmottaPreStartupListener.java
----------------------------------------------------------------------
diff --git a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/servlet/MarmottaPreStartupListener.java b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/servlet/MarmottaPreStartupListener.java
index 9487a1e..7124578 100644
--- a/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/servlet/MarmottaPreStartupListener.java
+++ b/platform/marmotta-core/src/main/java/org/apache/marmotta/platform/core/servlet/MarmottaPreStartupListener.java
@@ -17,8 +17,13 @@
  */
 package org.apache.marmotta.platform.core.servlet;
 
+import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.FileConfiguration;
+import org.apache.commons.configuration.PropertiesConfiguration;
 import org.apache.marmotta.platform.core.startup.MarmottaStartupService;
 import org.apache.marmotta.platform.core.util.CDIContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import javax.servlet.ServletContextEvent;
 import javax.servlet.ServletContextListener;
@@ -29,6 +34,8 @@ import javax.servlet.ServletContextListener;
  */
 public class MarmottaPreStartupListener implements ServletContextListener {
 
+    private static Logger log = LoggerFactory.getLogger(MarmottaPreStartupListener.class);
+
     private MarmottaStartupService lmfStartupService;
 
     /**
@@ -45,7 +52,19 @@ public class MarmottaPreStartupListener implements ServletContextListener {
             lmfStartupService = CDIContext.getInstance(MarmottaStartupService.class);
         }
 
-        lmfStartupService.startupConfiguration(null,null,sce.getServletContext());
+        // we check for the presence of the configuration.override init parameter; if it exists, we load this
+        // configuration file and pass it as configuration override to the startup
+        PropertiesConfiguration override = null;
+
+        if(sce.getServletContext().getInitParameter("configuration.override") != null) {
+            try {
+                override = new PropertiesConfiguration(sce.getServletContext().getInitParameter("configuration.override"));
+            } catch (ConfigurationException e) {
+                log.warn("could not load configuration override file from {}", sce.getServletContext().getInitParameter("configuration.override"));
+            }
+        }
+
+        lmfStartupService.startupConfiguration(null,override,sce.getServletContext());
 
     }