support for storing the ServletContext in MirConfig for later use. Have to do this...
[mir.git] / source / mir / misc / MirConfig.java
index c22c2e0..a64f4cf 100755 (executable)
@@ -1,10 +1,13 @@
 package  mir.misc;
 
-import  javax.servlet.http.*;
 import  java.net.*;
 import  java.io.*;
 import  java.util.*;
 import  java.lang.*;
+
+import  javax.servlet.ServletContext;
+import  javax.servlet.http.*;
+
 import  mir.storage.StorageObjectException;
 import  mir.storage.DatabaseAdaptor;
 import com.codestudio.util.*;
@@ -40,11 +43,13 @@ public class MirConfig extends Configuration {
    * @param name, The name of the servlet (usually "Mir")
    * @param confName, the name of the config file to load.
    */
-  public static synchronized void initConfig(String home, String uri,
+  public static synchronized void initConfig(ServletContext ctx, String uri,
                                             String name, String confName) {
     initConfResource(confName);
     configHash = new HashMap();
-    configHash.put("Home", home);
+
+    configHash.put("Home", ctx.getRealPath("/"));
+    configHash.put("ServletContext", ctx);
     configHash.put("RootUri", uri);
 
     Enumeration resKeys = getResourceKeys();
@@ -82,6 +87,16 @@ public class MirConfig extends Configuration {
            (String)configHash.get(propName);
   }
 
+  /**
+   * Returns the property asked for iin raw Object form by 
+   * pulling it out a HashMap
+   * @param a String containing the property name (key)
+   * @return an Object containing the prop.value
+   */
+  public static Object getPropAsObject(String propName) {
+    return configHash.get(propName);
+  }
+
   public static void initDbPool () throws StorageObjectException {
     if (configHash == null) {
         throw new StorageObjectException("MirConfig -- Trying initialize "+