home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 49 / cda49.iso / VNULabs / BrownOrifice / BOHTTPD-0.2 / BOMimeType.java < prev    next >
Encoding:
Java Source  |  2000-08-05  |  5.7 KB  |  150 lines

  1. import java.util.Hashtable;
  2.  
  3. class BOMimeType {
  4.   public static Hashtable hash;
  5.  
  6.   public static void main(String[] argv) {
  7.     for (int i = 0; i < argv.length; i++) {
  8.       System.out.println(argv[i] + " " + get(argv[i]));
  9.     }
  10.   }
  11.  
  12.   public static String get(String s) {
  13. System.out.println("lookup: [" + s + "]\n");
  14.     if (s.endsWith("/")) return "text/html";
  15.     int at = s.lastIndexOf(".");
  16.     String ext = (at < 0) ? s : s.substring(at + 1);
  17.     String type = (String)hash.get(ext);
  18.     return type == null ? "text/plain" : type;
  19.   }
  20.  
  21.   static {
  22.     hash = new Hashtable();
  23.     hash.put("ez", "application/andrew-inset");
  24.     hash.put("hqx", "application/mac-binhex40");
  25.     hash.put("cpt", "application/mac-compactpro");
  26.     hash.put("doc", "application/msword");
  27.     hash.put("bin", "application/octet-stream");
  28.     hash.put("dms", "application/octet-stream");
  29.     hash.put("lha", "application/octet-stream");
  30.     hash.put("lzh", "application/octet-stream");
  31.     hash.put("exe", "application/octet-stream");
  32.     hash.put("class", "application/octet-stream");
  33.     hash.put("oda", "application/oda");
  34.     hash.put("pdf", "application/pdf");
  35.     hash.put("ai", "application/postscript");
  36.     hash.put("eps", "application/postscript");
  37.     hash.put("ps", "application/postscript");
  38.     hash.put("rtf", "application/rtf");
  39.     hash.put("smi", "application/smil");
  40.     hash.put("smil", "application/smil");
  41.     hash.put("mif", "application/vnd.mif");
  42.     hash.put("ppt", "application/vnd.ms-powerpoint");
  43.     hash.put("bcpio", "application/x-bcpio");
  44.     hash.put("bz2", "application/x-bzip2");
  45.     hash.put("vcd", "application/x-cdlink");
  46.     hash.put("pgn", "application/x-chess-pgn");
  47.     hash.put("cpio", "application/x-cpio");
  48.     hash.put("csh", "application/x-csh");
  49.     hash.put("dcr", "application/x-director");
  50.     hash.put("dir", "application/x-director");
  51.     hash.put("dxr", "application/x-director");
  52.     hash.put("dvi", "application/x-dvi");
  53.     hash.put("spl", "application/x-futuresplash");
  54.     hash.put("gtar", "application/x-gtar");
  55.     hash.put("gz", "application/x-gzip");
  56.     hash.put("tgz", "application/x-gzip");
  57.     hash.put("hdf", "application/x-hdf");
  58.     hash.put("js", "application/x-javascript");
  59.     hash.put("skp", "application/x-koan");
  60.     hash.put("skd", "application/x-koan");
  61.     hash.put("skt", "application/x-koan");
  62.     hash.put("skm", "application/x-koan");
  63.     hash.put("latex", "application/x-latex");
  64.     hash.put("nc", "application/x-netcdf");
  65.     hash.put("cdf", "application/x-netcdf");
  66.     hash.put("rpm", "application/x-rpm");
  67.     hash.put("sh", "application/x-sh");
  68.     hash.put("shar", "application/x-shar");
  69.     hash.put("swf", "application/x-shockwave-flash");
  70.     hash.put("sit", "application/x-stuffit");
  71.     hash.put("sv4cpio", "application/x-sv4cpio");
  72.     hash.put("sv4crc", "application/x-sv4crc");
  73.     hash.put("tar", "application/x-tar");
  74.     hash.put("tcl", "application/x-tcl");
  75.     hash.put("tex", "application/x-tex");
  76.     hash.put("texinfo", "application/x-texinfo");
  77.     hash.put("texi", "application/x-texinfo");
  78.     hash.put("t", "application/x-troff");
  79.     hash.put("tr", "application/x-troff");
  80.     hash.put("roff", "application/x-troff");
  81.     hash.put("man", "application/x-troff-man");
  82.     hash.put("me", "application/x-troff-me");
  83.     hash.put("ms", "application/x-troff-ms");
  84.     hash.put("ustar", "application/x-ustar");
  85.     hash.put("src", "application/x-wais-source");
  86.     hash.put("zip", "application/zip");
  87.     hash.put("au", "audio/basic");
  88.     hash.put("snd", "audio/basic");
  89.     hash.put("mid", "audio/midi");
  90.     hash.put("midi", "audio/midi");
  91.     hash.put("kar", "audio/midi");
  92.     hash.put("mpga", "audio/mpeg");
  93.     hash.put("mp2", "audio/mpeg");
  94.     hash.put("mp3", "audio/mpeg");
  95.     hash.put("aif", "audio/x-aiff");
  96.     hash.put("aiff", "audio/x-aiff");
  97.     hash.put("aifc", "audio/x-aiff");
  98.     hash.put("ram", "audio/x-pn-realaudio");
  99.     hash.put("rm", "audio/x-pn-realaudio");
  100.     hash.put("ra", "audio/x-realaudio");
  101.     hash.put("wav", "audio/x-wav");
  102.     hash.put("pdb", "chemical/x-pdb");
  103.     hash.put("xyz", "chemical/x-pdb");
  104.     hash.put("gif", "image/gif");
  105.     hash.put("ief", "image/ief");
  106.     hash.put("jpeg", "image/jpeg");
  107.     hash.put("jpg", "image/jpeg");
  108.     hash.put("jpe", "image/jpeg");
  109.     hash.put("png", "image/png");
  110.     hash.put("tiff", "image/tiff");
  111.     hash.put("tif", "image/tiff");
  112.     hash.put("ras", "image/x-cmu-raster");
  113.     hash.put("pnm", "image/x-portable-anymap");
  114.     hash.put("pbm", "image/x-portable-bitmap");
  115.     hash.put("pgm", "image/x-portable-graymap");
  116.     hash.put("ppm", "image/x-portable-pixmap");
  117.     hash.put("rgb", "image/x-rgb");
  118.     hash.put("xbm", "image/x-xbitmap");
  119.     hash.put("xpm", "image/x-xpixmap");
  120.     hash.put("xwd", "image/x-xwindowdump");
  121.     hash.put("igs", "model/iges");
  122.     hash.put("iges", "model/iges");
  123.     hash.put("msh", "model/mesh");
  124.     hash.put("mesh", "model/mesh");
  125.     hash.put("silo", "model/mesh");
  126.     hash.put("wrl", "model/vrml");
  127.     hash.put("vrml", "model/vrml");
  128.     hash.put("css", "text/css");
  129.     hash.put("asc", "text/plain");
  130.     hash.put("txt", "text/plain");
  131.     hash.put("rtx", "text/richtext");
  132.     hash.put("rtf", "text/rtf");
  133.     hash.put("sgml", "text/sgml");
  134.     hash.put("sgm", "text/sgml");
  135.     hash.put("tsv", "text/tab-separated-values");
  136.     hash.put("etx", "text/x-setext");
  137.     hash.put("xml", "text/xml");
  138.     hash.put("mpeg", "video/mpeg");
  139.     hash.put("mpg", "video/mpeg");
  140.     hash.put("mpe", "video/mpeg");
  141.     hash.put("qt", "video/quicktime");
  142.     hash.put("mov", "video/quicktime");
  143.     hash.put("avi", "video/x-msvideo");
  144.     hash.put("movie", "video/x-sgi-movie");
  145.     hash.put("ice", "x-conference/x-cooltalk");
  146.     hash.put("html", "text/html");
  147.     hash.put("htm", "text/html");
  148.   }
  149. }
  150.