home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1999 April / DPPCPRO0499.ISO / April / Notes / 50b2wic.exe / DATA1.CAB / NotesProgramFilesJavaSupport / icsclass.jar / lotus / domino / servlet / DominoServletContext.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-15  |  7.7 KB  |  226 lines

  1. package lotus.domino.servlet;
  2.  
  3. import java.util.Enumeration;
  4. import java.util.Hashtable;
  5. import javax.servlet.Servlet;
  6. import javax.servlet.ServletContext;
  7.  
  8. public class DominoServletContext implements ServletContext {
  9.    private String i_server;
  10.    private Hashtable i_servlets;
  11.    private Hashtable i_attributes;
  12.    static Hashtable table = new Hashtable();
  13.  
  14.    public DominoServletContext(Hashtable var1, String var2, String var3, Hashtable var4) {
  15.       this.i_servlets = var1;
  16.       this.i_attributes = var4;
  17.       int var5 = var2.lastIndexOf(32);
  18.       if (var5 == -1) {
  19.          this.i_server = var2;
  20.       } else {
  21.          this.i_server = var2.substring(0, var5) + '/' + var2.substring(var5 + 1);
  22.       }
  23.    }
  24.  
  25.    public Object getAttribute(String var1) {
  26.       return (String)this.i_attributes.get(var1);
  27.    }
  28.  
  29.    public void putServlet(Servlet var1, String var2) {
  30.       this.i_servlets.put(var2, var1);
  31.    }
  32.  
  33.    public Servlet getServlet(String var1) {
  34.       return (Servlet)this.i_servlets.get(var1);
  35.    }
  36.  
  37.    public Enumeration getServlets() {
  38.       return this.i_servlets.elements();
  39.    }
  40.  
  41.    public Enumeration getServletNames() {
  42.       return this.i_servlets.keys();
  43.    }
  44.  
  45.    public void removeServlet(String var1) {
  46.       this.i_servlets.remove(var1);
  47.    }
  48.  
  49.    public void log(String var1) {
  50.       System.out.println(var1);
  51.    }
  52.  
  53.    public void log(Exception var1, String var2) {
  54.       this.log(var2);
  55.       ((Throwable)var1).printStackTrace(System.out);
  56.    }
  57.  
  58.    public void closeServletLog() {
  59.    }
  60.  
  61.    public String getServerInfo() {
  62.       return this.i_server;
  63.    }
  64.  
  65.    public String getRealPath(String var1) {
  66.       try {
  67.          return NativeStub.translate(var1);
  68.       } catch (NativeStubException var2) {
  69.          return null;
  70.       }
  71.    }
  72.  
  73.    public String getMimeType(String var1) {
  74.       int var3 = var1.lastIndexOf(46);
  75.       String var2;
  76.       if (var3 < 0) {
  77.          var2 = new String(" ");
  78.       } else {
  79.          var2 = var1.substring(var3 + 1);
  80.       }
  81.  
  82.       return (String)table.get(var2);
  83.    }
  84.  
  85.    static {
  86.       table.put("ai", "application/postscript");
  87.       table.put("aiff", "audio/x-aiff");
  88.       table.put("aifc", "audio/x-aiff");
  89.       table.put("aif", "audio/x-aiff");
  90.       table.put("au", "audio/basic");
  91.       table.put("asm", "text/x-asm");
  92.       table.put("bcpio", "application/x-bcpio");
  93.       table.put("bin", "application/octet-stream");
  94.       table.put("bmp", "image/bmp");
  95.       table.put("bsh", "application/x-bsh");
  96.       table.put("CCAD", "application/clariscad");
  97.       table.put("cdf", "application/x-netcdf");
  98.       table.put("class", "application/octet-stream");
  99.       table.put("cpio", "application/x-cpio");
  100.       table.put("csh", "application/x-csh");
  101.       table.put("DRW", "application/drafting");
  102.       table.put("dwg", "application/acad");
  103.       table.put("DWG", "application/acad");
  104.       table.put("dvi", "application/x-dvi");
  105.       table.put("dxf", "application/dxf");
  106.       table.put("DXF", "application/dxf");
  107.       table.put("eps", "application/postscript");
  108.       table.put("gtar", "application/x-gtar");
  109.       table.put("hdf", "application/x-hdf");
  110.       table.put("html", "text/html");
  111.       table.put("htm", "text/html");
  112.       table.put("htmls", "text/x-ssi-html");
  113.       table.put("ief", "image/ief");
  114.       table.put("igs", "application/iges");
  115.       table.put("iges", "application/iges");
  116.       table.put("jpg", "image/jpeg");
  117.       table.put("JPG", "image/jpeg");
  118.       table.put("JPE", "image/jpeg");
  119.       table.put("jpe", "image/jpeg");
  120.       table.put("JPEG", "image/jpeg");
  121.       table.put("jpeg", "image/jpeg");
  122.       table.put("ksh", "application/x-ksh");
  123.       table.put("latex", "application/x-latex");
  124.       table.put("IGS", "application/iges");
  125.       table.put("IGES", "application/iges");
  126.       table.put("lwp", "application/x-wordpro");
  127.       table.put("list", "text/plain");
  128.       table.put("lst", "text/plain");
  129.       table.put("man", "application/x-troff-man");
  130.       table.put("me", "application/x-troff-me");
  131.       table.put("mime", "www/mime");
  132.       table.put("mjpg", "video/x-motion-jpeg");
  133.       table.put("MPG", "video/mpeg");
  134.       table.put("mpg", "video/mpeg");
  135.       table.put("MPE", "video/mpeg");
  136.       table.put("mpe", "video/mpeg");
  137.       table.put("MPEG", "video/mpeg");
  138.       table.put("mpeg", "video/mpeg");
  139.       table.put("ms", "application/x-troff-ms");
  140.       table.put("nc", "application/x-netcdf");
  141.       table.put("oda", "application/oda");
  142.       table.put("pcl", "application/x-pcl");
  143.       table.put("pdf", "application/pdf");
  144.       table.put("pnm", "image/x-portable-anymap");
  145.       table.put("pbm", "image/x-portable-bitmap");
  146.       table.put("pgm", "image/x-portable-graymap");
  147.       table.put("ppm", "image/x-portable-pixmap");
  148.       table.put("pre", "application/x-freelance");
  149.       table.put("prz", "application/x-freelance");
  150.       table.put("prs", "application/x-freelance");
  151.       table.put("prt", "application/pro_eng");
  152.       table.put("PRT", "application/pro_eng");
  153.       table.put("PS", "application/postscript");
  154.       table.put("ps", "application/postscript");
  155.       table.put("roff", "application/x-troff");
  156.       table.put("rtf", "application/x-rtf");
  157.       table.put("ras", "image/cmu-raster");
  158.       table.put("rgb", "image/x-rgb");
  159.       table.put("set", "application/set");
  160.       table.put("SET", "application/set");
  161.       table.put("sh", "application/x-sh");
  162.       table.put("shar", "application/x-shar");
  163.       table.put("snd", "audio/basic");
  164.       table.put("SOL", "application/solids");
  165.       table.put("src", "application/x-wais-source");
  166.       table.put("stp", "application/STEP");
  167.       table.put("STP", "application/STEP");
  168.       table.put("step", "application/STEP");
  169.       table.put("STEP", "application/STEP");
  170.       table.put("stl", "application/SLA");
  171.       table.put("STL", "application/SLA");
  172.       table.put("sv4cpio", "application/x-sv4cpio");
  173.       table.put("sv4crc", "application/x-sv4crc");
  174.       table.put("t", "application/x-troff");
  175.       table.put("tcl", "application/x-tcl");
  176.       table.put("tex", "application/x-tex");
  177.       table.put("texi", "application/x-texinfo");
  178.       table.put("texinfo", "application/x-texinfo");
  179.       table.put("tif", "image/tiff");
  180.       table.put("tiff", "image/tiff");
  181.       table.put("tr", " application/x-troff");
  182.       table.put("uil", "text/x-uil");
  183.       table.put("unv", "application/i-deas");
  184.       table.put("UNV", "application/i-deas");
  185.       table.put("uu", "text/x-uuencode");
  186.       table.put("vda", "application/vda");
  187.       table.put("VDA", "application/vda");
  188.       table.put("wk1", "application/x-123");
  189.       table.put("wav", "audio/x-wav");
  190.       table.put("gif", "image/gif");
  191.       table.put("xbm", "image/x-xbitmap");
  192.       table.put("xpm", "image/x-xpixmap");
  193.       table.put("xwd", "image/x-xwindowdump");
  194.       table.put("shtml", "text/x-ssi-html");
  195.       table.put("c", "text/plain");
  196.       table.put("h", "text/plain");
  197.       table.put("C", "text/plain");
  198.       table.put("cc", "text/plain");
  199.       table.put("hh", "text/plain");
  200.       table.put("java", "text/plain");
  201.       table.put("m", "text/plain");
  202.       table.put("f90", "text/plain");
  203.       table.put("txt", "text/plain");
  204.       table.put("rtx", "text/richtext");
  205.       table.put("tsv", "text/tab-separated-values");
  206.       table.put("etx", "text/x-setext");
  207.       table.put("qt", "video/quicktime");
  208.       table.put("mov", "video/quicktime");
  209.       table.put("avi", "video/x-msvideo");
  210.       table.put("movie", " video/x-sgi-movie");
  211.       table.put("gz", "multipart/x-gzip");
  212.       table.put("zip", "multipart/x-zip");
  213.       table.put("tar", "multipart/x-tar");
  214.       table.put("ustar", " multipart/x-ustar");
  215.       table.put("cxx", "text/plain");
  216.       table.put("for", "text/plain");
  217.       table.put("mar", "text/plain");
  218.       table.put("log", "text/plain");
  219.       table.put("com", "text/plain");
  220.       table.put("sdml", "text/plain");
  221.       table.put("def", "text/plain");
  222.       table.put("conf", "text/plain");
  223.       table.put(" ", "text/plain");
  224.    }
  225. }
  226.