Added an optional server-context name fetching operation.
[jsvc.git] / src / dolda / jsvc / j2ee / J2eeContext.java
index 5409b8c..bf1917c 100644 (file)
@@ -3,18 +3,35 @@ package dolda.jsvc.j2ee;
 import dolda.jsvc.*;
 import dolda.jsvc.util.*;
 import javax.servlet.*;
-import javax.servlet.http.*;
+import java.util.*;
+import java.io.*;
 
-public class J2eeContext implements ServerContext {
-    private ServletConfig cfg;
-    private long ctime;
+public abstract class J2eeContext implements ServerContext {
+    private final ServletConfig sc;
+    private final long ctime;
+    protected final Properties config;
     
-    J2eeContext(ServletConfig cfg) {
-       this.cfg = cfg;
+    protected J2eeContext(ServletConfig sc) {
+       this.sc = sc;
        this.ctime = System.currentTimeMillis();
+       config = new Properties();
+    }
+    
+    static J2eeContext create(ServletConfig sc) {
+       if(TomcatContext.tomcatp(sc))
+           return(new TomcatContext(sc));
+       return(new StandardContext(sc));
     }
     
     public long starttime() {
        return(ctime);
     }
+    
+    public String config(String key) {
+       return((String)config.get(key));
+    }
+    
+    public ServletConfig j2eeconfig() {
+       return(sc);
+    }
 }