/* * Copyright (C) 2000 - 2010 TagServlet Ltd * * This file is part of Open BlueDragon (OpenBD) CFML Server Engine. * * OpenBD is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * Free Software Foundation,version 3. * * OpenBD is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with OpenBD. If not, see http://www.gnu.org/licenses/ * * Additional permission under GNU GPL version 3 section 7 * * If you modify this Program, or any covered work, by linking or combining * it with any of the JARS listed in the README.txt (or a modified version of * (that library), containing parts covered by the terms of that JAR, the * licensors of this Program grant you additional permission to convey the * resulting work. * README.txt @ http://www.openbluedragon.org/license/README.txt * * http://www.openbluedragon.org/ */ package com.naryx.tagfusion.cfm.file; import java.util.HashMap; import java.util.Map; public class MimeLookup { public static Map<String,String> mimeTypes = new HashMap<String,String>(); static{ mimeTypes.put( ".3dm", "x-world/x-3dmf" ); mimeTypes.put( ".3dmf", "x-world/x-3dmf" ); mimeTypes.put( ".a", "application/octet-stream" ); mimeTypes.put( ".aab", "application/x-authorware-bin" ); mimeTypes.put( ".aam", "application/x-authorware-map" ); mimeTypes.put( ".aas", "application/x-authorware-seg" ); mimeTypes.put( ".abc", "text/vnd.abc" ); mimeTypes.put( ".acgi", "text/html" ); mimeTypes.put( ".afl", "video/animaflex" ); mimeTypes.put( ".ai", "application/postscript" ); mimeTypes.put( ".aif", "audio/x-aiff" ); mimeTypes.put( ".aifc", "audio/x-aiff" ); mimeTypes.put( ".aiff", "audio/x-aiff" ); mimeTypes.put( ".aim", "application/x-aim" ); mimeTypes.put( ".aip", "text/x-audiosoft-intra" ); mimeTypes.put( ".ani", "application/x-navi-animation" ); mimeTypes.put( ".aos", "application/x-nokia-9000-communicator-add-on-software" ); mimeTypes.put( ".aps", "application/mime" ); mimeTypes.put( ".arc", "application/octet-stream" ); mimeTypes.put( ".arj", "application/octet-stream" ); mimeTypes.put( ".art", "image/x-jg" ); mimeTypes.put( ".asf", "video/x-ms-asf" ); mimeTypes.put( ".asm", "text/x-asm" ); mimeTypes.put( ".asp", "text/asp" ); mimeTypes.put( ".asx", "video/x-ms-asf-plugin" ); mimeTypes.put( ".au", "audio/x-au" ); mimeTypes.put( ".avi", "video/x-msvideo" ); mimeTypes.put( ".avs", "video/avs-video" ); mimeTypes.put( ".bcpio", "application/x-bcpio" ); mimeTypes.put( ".bin", "application/x-macbinary" ); mimeTypes.put( ".bm", "image/bmp" ); mimeTypes.put( ".bmp", "image/x-windows-bmp" ); mimeTypes.put( ".boo", "application/book" ); mimeTypes.put( ".book", "application/book" ); mimeTypes.put( ".boz", "application/x-bzip2" ); mimeTypes.put( ".bsh", "application/x-bsh" ); mimeTypes.put( ".bz", "application/x-bzip" ); mimeTypes.put( ".bz2", "application/x-bzip2" ); mimeTypes.put( ".c", "text/x-c" ); mimeTypes.put( ".c++", "text/plain" ); mimeTypes.put( ".cat", "application/vnd.ms-pki.seccat" ); mimeTypes.put( ".cc", "text/x-c" ); mimeTypes.put( ".ccad", "application/clariscad" ); mimeTypes.put( ".cco", "application/x-cocoa" ); mimeTypes.put( ".cdf", "application/x-netcdf" ); mimeTypes.put( ".cer", "application/x-x509-ca-cert" ); mimeTypes.put( ".cha", "application/x-chat" ); mimeTypes.put( ".chat", "application/x-chat" ); mimeTypes.put( ".class", "application/x-java-class" ); mimeTypes.put( ".com", "text/plain" ); mimeTypes.put( ".conf", "text/plain" ); mimeTypes.put( ".cpio", "application/x-cpio" ); mimeTypes.put( ".cpp", "text/x-c" ); mimeTypes.put( ".cpt", "application/x-cpt" ); mimeTypes.put( ".crl", "application/pkix-crl" ); mimeTypes.put( ".crt", "application/x-x509-user-cert" ); mimeTypes.put( ".csh", "text/x-script.csh" ); mimeTypes.put( ".css", "text/css" ); mimeTypes.put( ".cxx", "text/plain" ); mimeTypes.put( ".dcr", "application/x-director" ); mimeTypes.put( ".deepv", "application/x-deepv" ); mimeTypes.put( ".def", "text/plain" ); mimeTypes.put( ".der", "application/x-x509-ca-cert" ); mimeTypes.put( ".dif", "video/x-dv" ); mimeTypes.put( ".dir", "application/x-director" ); mimeTypes.put( ".dl", "video/x-dl" ); mimeTypes.put( ".doc", "application/msword" ); mimeTypes.put( ".dot", "application/msword" ); mimeTypes.put( ".dp", "application/commonground" ); mimeTypes.put( ".drw", "application/drafting" ); mimeTypes.put( ".dump", "application/octet-stream" ); mimeTypes.put( ".dv", "video/x-dv" ); mimeTypes.put( ".dvi", "application/x-dvi" ); mimeTypes.put( ".dwf", "model/vnd.dwf" ); mimeTypes.put( ".dwg", "image/x-dwg" ); mimeTypes.put( ".dxf", "image/x-dwg" ); mimeTypes.put( ".dxr", "application/x-director" ); mimeTypes.put( ".el", "text/x-script.elisp" ); mimeTypes.put( ".elc", "application/x-elc" ); mimeTypes.put( ".env", "application/x-envoy" ); mimeTypes.put( ".eps", "application/postscript" ); mimeTypes.put( ".es", "application/x-esrehber" ); mimeTypes.put( ".etx", "text/x-setext" ); mimeTypes.put( ".evy", "application/x-envoy" ); mimeTypes.put( ".exe", "application/octet-stream" ); mimeTypes.put( ".f", "text/x-fortran" ); mimeTypes.put( ".f77", "text/x-fortran" ); mimeTypes.put( ".f90", "text/x-fortran" ); mimeTypes.put( ".fdf", "application/vnd.fdf" ); mimeTypes.put( ".fif", "image/fif" ); mimeTypes.put( ".fli", "video/x-fli" ); mimeTypes.put( ".flo", "image/florian" ); mimeTypes.put( ".flx", "text/vnd.fmi.flexstor" ); mimeTypes.put( ".fmf", "video/x-atomic3d-feature" ); mimeTypes.put( ".for", "text/x-fortran" ); mimeTypes.put( ".fpx", "image/vnd.net-fpx" ); mimeTypes.put( ".frl", "application/freeloader" ); mimeTypes.put( ".funk", "audio/make" ); mimeTypes.put( ".g", "text/plain" ); mimeTypes.put( ".g3", "image/g3fax" ); mimeTypes.put( ".gif", "image/gif" ); mimeTypes.put( ".gl", "video/x-gl" ); mimeTypes.put( ".gsd", "audio/x-gsm" ); mimeTypes.put( ".gsm", "audio/x-gsm" ); mimeTypes.put( ".gsp", "application/x-gsp" ); mimeTypes.put( ".gss", "application/x-gss" ); mimeTypes.put( ".gtar", "application/x-gtar" ); mimeTypes.put( ".gz", "application/x-gzip" ); mimeTypes.put( ".gzip", "multipart/x-gzip" ); mimeTypes.put( ".h", "text/x-h" ); mimeTypes.put( ".hdf", "application/x-hdf" ); mimeTypes.put( ".help", "application/x-helpfile" ); mimeTypes.put( ".hgl", "application/vnd.hp-hpgl" ); mimeTypes.put( ".hh", "text/x-h" ); mimeTypes.put( ".hlb", "text/x-script" ); mimeTypes.put( ".hlp", "application/x-winhelp" ); mimeTypes.put( ".hpg", "application/vnd.hp-hpgl" ); mimeTypes.put( ".hpgl", "application/vnd.hp-hpgl" ); mimeTypes.put( ".hqx", "application/x-mac-binhex40" ); mimeTypes.put( ".hta", "application/hta" ); mimeTypes.put( ".htc", "text/x-component" ); mimeTypes.put( ".htm", "text/html" ); mimeTypes.put( ".html", "text/html" ); mimeTypes.put( ".htmls", "text/html" ); mimeTypes.put( ".htt", "text/webviewhtml" ); mimeTypes.put( ".htx", "text/html" ); mimeTypes.put( ".ice", "x-conference/x-cooltalk" ); mimeTypes.put( ".ico", "image/x-icon" ); mimeTypes.put( ".idc", "text/plain" ); mimeTypes.put( ".ief", "image/ief" ); mimeTypes.put( ".iefs", "image/ief" ); mimeTypes.put( ".iges", "model/iges" ); mimeTypes.put( ".igs", "model/iges" ); mimeTypes.put( ".ima", "application/x-ima" ); mimeTypes.put( ".imap", "application/x-httpd-imap" ); mimeTypes.put( ".inf", "application/inf" ); mimeTypes.put( ".ins", "application/x-internett-signup" ); mimeTypes.put( ".ip", "application/x-ip2" ); mimeTypes.put( ".isu", "video/x-isvideo" ); mimeTypes.put( ".it", "audio/it" ); mimeTypes.put( ".iv", "application/x-inventor" ); mimeTypes.put( ".ivr", "i-world/i-vrml" ); mimeTypes.put( ".ivy", "application/x-livescreen" ); mimeTypes.put( ".jam", "audio/x-jam" ); mimeTypes.put( ".jav", "text/x-java-source" ); mimeTypes.put( ".java", "text/x-java-source" ); mimeTypes.put( ".jcm", "application/x-java-commerce" ); mimeTypes.put( ".jfif", "image/pjpeg" ); mimeTypes.put( ".jfif-tbnl", "image/jpeg" ); mimeTypes.put( ".jpe", "image/pjpeg" ); mimeTypes.put( ".jpeg", "image/pjpeg" ); mimeTypes.put( ".jpg", "image/pjpeg" ); mimeTypes.put( ".jps", "image/x-jps" ); mimeTypes.put( ".js", "application/x-javascript" ); mimeTypes.put( ".jut", "image/jutvision" ); mimeTypes.put( ".kar", "music/x-karaoke" ); mimeTypes.put( ".ksh", "text/x-script.ksh" ); mimeTypes.put( ".la", "audio/x-nspaudio" ); mimeTypes.put( ".lam", "audio/x-liveaudio" ); mimeTypes.put( ".latex", "application/x-latex" ); mimeTypes.put( ".lha", "application/x-lha" ); mimeTypes.put( ".lhx", "application/octet-stream" ); mimeTypes.put( ".list", "text/plain" ); mimeTypes.put( ".lma", "audio/x-nspaudio" ); mimeTypes.put( ".log", "text/plain" ); mimeTypes.put( ".lsp", "text/x-script.lisp" ); mimeTypes.put( ".lst", "text/plain" ); mimeTypes.put( ".lsx", "text/x-la-asf" ); mimeTypes.put( ".ltx", "application/x-latex" ); mimeTypes.put( ".lzh", "application/x-lzh" ); mimeTypes.put( ".lzx", "application/x-lzx" ); mimeTypes.put( ".m", "text/x-m" ); mimeTypes.put( ".m1v", "video/mpeg" ); mimeTypes.put( ".m2a", "audio/mpeg" ); mimeTypes.put( ".m2v", "video/mpeg" ); mimeTypes.put( ".m3u", "audio/x-mpequrl" ); mimeTypes.put( ".man", "application/x-troff-man" ); mimeTypes.put( ".map", "application/x-navimap" ); mimeTypes.put( ".mar", "text/plain" ); mimeTypes.put( ".mbd", "application/mbedlet" ); mimeTypes.put( ".mc$", "application/x-magic-cap-package-1.0" ); mimeTypes.put( ".mcd", "application/x-mathcad" ); mimeTypes.put( ".mcf", "text/mcf" ); mimeTypes.put( ".mcp", "application/netmc" ); mimeTypes.put( ".me", "application/x-troff-me" ); mimeTypes.put( ".mht", "message/rfc822" ); mimeTypes.put( ".mhtml", "message/rfc822" ); mimeTypes.put( ".mid", "x-music/x-midi" ); mimeTypes.put( ".midi", "x-music/x-midi" ); mimeTypes.put( ".mif", "application/x-mif" ); mimeTypes.put( ".mime", "www/mime" ); mimeTypes.put( ".mjf", "audio/x-vnd.audioexplosion.mjuicemediafile" ); mimeTypes.put( ".mjpg", "video/x-motion-jpeg" ); mimeTypes.put( ".mm", "application/x-meme" ); mimeTypes.put( ".mme", "application/base64" ); mimeTypes.put( ".mod", "audio/x-mod" ); mimeTypes.put( ".moov", "video/quicktime" ); mimeTypes.put( ".mov", "video/quicktime" ); mimeTypes.put( ".movie", "video/x-sgi-movie" ); mimeTypes.put( ".mp2", "video/x-mpeq2a" ); mimeTypes.put( ".mp3", "video/x-mpeg" ); mimeTypes.put( ".mpa", "video/mpeg" ); mimeTypes.put( ".mpc", "application/x-project" ); mimeTypes.put( ".mpe", "video/mpeg" ); mimeTypes.put( ".mpeg", "video/mpeg" ); mimeTypes.put( ".mpg", "video/mpeg" ); mimeTypes.put( ".mpga", "audio/mpeg" ); mimeTypes.put( ".mpp", "application/vnd.ms-project" ); mimeTypes.put( ".mpt", "application/x-project" ); mimeTypes.put( ".mpv", "application/x-project" ); mimeTypes.put( ".mpx", "application/x-project" ); mimeTypes.put( ".mrc", "application/marc" ); mimeTypes.put( ".ms", "application/x-troff-ms" ); mimeTypes.put( ".mv", "video/x-sgi-movie" ); mimeTypes.put( ".my", "audio/make" ); mimeTypes.put( ".mzz", "application/x-vnd.audioexplosion.mzz" ); mimeTypes.put( ".nap", "image/naplps" ); mimeTypes.put( ".naplps", "image/naplps" ); mimeTypes.put( ".nc", "application/x-netcdf" ); mimeTypes.put( ".ncm", "application/vnd.nokia.configuration-message" ); mimeTypes.put( ".nif", "image/x-niff" ); mimeTypes.put( ".niff", "image/x-niff" ); mimeTypes.put( ".nix", "application/x-mix-transfer" ); mimeTypes.put( ".nsc", "application/x-conference" ); mimeTypes.put( ".nvd", "application/x-navidoc" ); mimeTypes.put( ".o", "application/octet-stream" ); mimeTypes.put( ".oda", "application/oda" ); mimeTypes.put( ".omc", "application/x-omc" ); mimeTypes.put( ".omcd", "application/x-omcdatamaker" ); mimeTypes.put( ".omcr", "application/x-omcregerator" ); mimeTypes.put( ".p", "text/x-pascal" ); mimeTypes.put( ".p10", "application/x-pkcs10" ); mimeTypes.put( ".p12", "application/x-pkcs12" ); mimeTypes.put( ".p7a", "application/x-pkcs7-signature" ); mimeTypes.put( ".p7c", "application/x-pkcs7-mime" ); mimeTypes.put( ".p7m", "application/x-pkcs7-mime" ); mimeTypes.put( ".p7r", "application/x-pkcs7-certreqresp" ); mimeTypes.put( ".p7s", "application/pkcs7-signature" ); mimeTypes.put( ".part", "application/pro_eng" ); mimeTypes.put( ".pas", "text/pascal" ); mimeTypes.put( ".pbm", "image/x-portable-bitmap" ); mimeTypes.put( ".pcl", "application/x-pcl" ); mimeTypes.put( ".pct", "image/x-pict" ); mimeTypes.put( ".pcx", "image/x-pcx" ); mimeTypes.put( ".pdb", "chemical/x-pdb" ); mimeTypes.put( ".pdf", "application/pdf" ); mimeTypes.put( ".pfunk", "audio/make.my.funk" ); mimeTypes.put( ".pgm", "image/x-portable-greymap" ); mimeTypes.put( ".pic", "image/pict" ); mimeTypes.put( ".pict", "image/pict" ); mimeTypes.put( ".pkg", "application/x-newton-compatible-pkg" ); mimeTypes.put( ".pko", "application/vnd.ms-pki.pko" ); mimeTypes.put( ".pl", "text/x-script.perl" ); mimeTypes.put( ".plx", "application/x-pixclscript" ); mimeTypes.put( ".pm", "text/x-script.perl-module" ); mimeTypes.put( ".pm4", "application/x-pagemaker" ); mimeTypes.put( ".pm5", "application/x-pagemaker" ); mimeTypes.put( ".png", "image/png" ); mimeTypes.put( ".pnm", "image/x-portable-anymap" ); mimeTypes.put( ".pot", "application/vnd.ms-powerpoint" ); mimeTypes.put( ".pov", "model/x-pov" ); mimeTypes.put( ".ppa", "application/vnd.ms-powerpoint" ); mimeTypes.put( ".ppm", "image/x-portable-pixmap" ); mimeTypes.put( ".pps", "application/vnd.ms-powerpoint" ); mimeTypes.put( ".ppt", "application/x-mspowerpoint" ); mimeTypes.put( ".ppz", "application/mspowerpoint" ); mimeTypes.put( ".pre", "application/x-freelance" ); mimeTypes.put( ".prt", "application/pro_eng" ); mimeTypes.put( ".ps", "application/postscript" ); mimeTypes.put( ".psd", "application/octet-stream" ); mimeTypes.put( ".pvu", "paleovu/x-pv" ); mimeTypes.put( ".pwz", "application/vnd.ms-powerpoint" ); mimeTypes.put( ".py", "text/x-script.phyton" ); mimeTypes.put( ".pyc", "applicaiton/x-bytecode.python" ); mimeTypes.put( ".qcp", "audio/vnd.qcelp" ); mimeTypes.put( ".qd3", "x-world/x-3dmf" ); mimeTypes.put( ".qd3d", "x-world/x-3dmf" ); mimeTypes.put( ".qif", "image/x-quicktime" ); mimeTypes.put( ".qt", "video/quicktime" ); mimeTypes.put( ".qtc", "video/x-qtc" ); mimeTypes.put( ".qti", "image/x-quicktime" ); mimeTypes.put( ".qtif", "image/x-quicktime" ); mimeTypes.put( ".ra", "audio/x-realaudio" ); mimeTypes.put( ".ram", "audio/x-pn-realaudio" ); mimeTypes.put( ".ras", "image/x-cmu-raster" ); mimeTypes.put( ".rast", "image/cmu-raster" ); mimeTypes.put( ".rexx", "text/x-script.rexx" ); mimeTypes.put( ".rf", "image/vnd.rn-realflash" ); mimeTypes.put( ".rgb", "image/x-rgb" ); mimeTypes.put( ".rm", "audio/x-pn-realaudio" ); mimeTypes.put( ".rmi", "audio/mid" ); mimeTypes.put( ".rmm", "audio/x-pn-realaudio" ); mimeTypes.put( ".rmp", "audio/x-pn-realaudio-plugin" ); mimeTypes.put( ".rng", "application/vnd.nokia.ringing-tone" ); mimeTypes.put( ".rnx", "application/vnd.rn-realplayer" ); mimeTypes.put( ".roff", "application/x-troff" ); mimeTypes.put( ".rp", "image/vnd.rn-realpix" ); mimeTypes.put( ".rpm", "audio/x-pn-realaudio-plugin" ); mimeTypes.put( ".rt", "text/vnd.rn-realtext" ); mimeTypes.put( ".rtf", "text/richtext" ); mimeTypes.put( ".rtx", "text/richtext" ); mimeTypes.put( ".rv", "video/vnd.rn-realvideo" ); mimeTypes.put( ".s", "text/x-asm" ); mimeTypes.put( ".s3m", "audio/s3m" ); mimeTypes.put( ".saveme", "application/octet-stream" ); mimeTypes.put( ".sbk", "application/x-tbook" ); mimeTypes.put( ".scm", "video/x-scm" ); mimeTypes.put( ".sdml", "text/plain" ); mimeTypes.put( ".sdp", "application/x-sdp" ); mimeTypes.put( ".sdr", "application/sounder" ); mimeTypes.put( ".sea", "application/x-sea" ); mimeTypes.put( ".set", "application/set" ); mimeTypes.put( ".sgm", "text/x-sgml" ); mimeTypes.put( ".sgml", "text/x-sgml" ); mimeTypes.put( ".sh", "text/x-script.sh" ); mimeTypes.put( ".shar", "application/x-shar" ); mimeTypes.put( ".shtml", "text/x-server-parsed-html" ); mimeTypes.put( ".sid", "audio/x-psid" ); mimeTypes.put( ".sit", "application/x-stuffit" ); mimeTypes.put( ".skd", "application/x-koan" ); mimeTypes.put( ".skm", "application/x-koan" ); mimeTypes.put( ".skp", "application/x-koan" ); mimeTypes.put( ".skt", "application/x-koan" ); mimeTypes.put( ".sl", "application/x-seelogo" ); mimeTypes.put( ".smi", "application/smil" ); mimeTypes.put( ".smil", "application/smil" ); mimeTypes.put( ".snd", "audio/x-adpcm" ); mimeTypes.put( ".sol", "application/solids" ); mimeTypes.put( ".spc", "text/x-speech" ); mimeTypes.put( ".spl", "application/futuresplash" ); mimeTypes.put( ".spr", "application/x-sprite" ); mimeTypes.put( ".sprite", "application/x-sprite" ); mimeTypes.put( ".src", "application/x-wais-source" ); mimeTypes.put( ".ssi", "text/x-server-parsed-html" ); mimeTypes.put( ".ssm", "application/streamingmedia" ); mimeTypes.put( ".sst", "application/vnd.ms-pki.certstore" ); mimeTypes.put( ".step", "application/step" ); mimeTypes.put( ".stl", "application/x-navistyle" ); mimeTypes.put( ".stp", "application/step" ); mimeTypes.put( ".sv4cpio", "application/x-sv4cpio" ); mimeTypes.put( ".sv4crc", "application/x-sv4crc" ); mimeTypes.put( ".svf", "image/x-dwg" ); mimeTypes.put( ".svr", "x-world/x-svr" ); mimeTypes.put( ".swf", "application/x-shockwave-flash" ); mimeTypes.put( ".t", "application/x-troff" ); mimeTypes.put( ".talk", "text/x-speech" ); mimeTypes.put( ".tar", "application/x-tar" ); mimeTypes.put( ".tbk", "application/x-tbook" ); mimeTypes.put( ".tcl", "text/x-script.tcl" ); mimeTypes.put( ".tcsh", "text/x-script.tcsh" ); mimeTypes.put( ".tex", "application/x-tex" ); mimeTypes.put( ".texi", "application/x-texinfo" ); mimeTypes.put( ".texinfo", "application/x-texinfo" ); mimeTypes.put( ".text", "text/plain" ); mimeTypes.put( ".tgz", "application/x-compressed" ); mimeTypes.put( ".tif", "image/x-tiff" ); mimeTypes.put( ".tiff", "image/x-tiff" ); mimeTypes.put( ".tr", "application/x-troff" ); mimeTypes.put( ".tsi", "audio/tsp-audio" ); mimeTypes.put( ".tsp", "audio/tsplayer" ); mimeTypes.put( ".tsv", "text/tab-separated-values" ); mimeTypes.put( ".turbot", "image/florian" ); mimeTypes.put( ".txt", "text/plain" ); mimeTypes.put( ".uil", "text/x-uil" ); mimeTypes.put( ".uni", "text/uri-list" ); mimeTypes.put( ".unis", "text/uri-list" ); mimeTypes.put( ".unv", "application/i-deas" ); mimeTypes.put( ".uri", "text/uri-list" ); mimeTypes.put( ".uris", "text/uri-list" ); mimeTypes.put( ".ustar", "multipart/x-ustar" ); mimeTypes.put( ".uu", "text/x-uuencode" ); mimeTypes.put( ".uue", "text/x-uuencode" ); mimeTypes.put( ".vcd", "application/x-cdlink" ); mimeTypes.put( ".vcs", "text/x-vcalendar" ); mimeTypes.put( ".vda", "application/vda" ); mimeTypes.put( ".vdo", "video/vdo" ); mimeTypes.put( ".vew", "application/groupwise" ); mimeTypes.put( ".viv", "video/vnd.vivo" ); mimeTypes.put( ".vivo", "video/vnd.vivo" ); mimeTypes.put( ".vmd", "application/vocaltec-media-desc" ); mimeTypes.put( ".vmf", "application/vocaltec-media-file" ); mimeTypes.put( ".voc", "audio/x-voc" ); mimeTypes.put( ".vos", "video/vosaic" ); mimeTypes.put( ".vox", "audio/voxware" ); mimeTypes.put( ".vqe", "audio/x-twinvq-plugin" ); mimeTypes.put( ".vqf", "audio/x-twinvq" ); mimeTypes.put( ".vql", "audio/x-twinvq-plugin" ); mimeTypes.put( ".vrml", "x-world/x-vrml" ); mimeTypes.put( ".vrt", "x-world/x-vrt" ); mimeTypes.put( ".vsd", "application/x-visio" ); mimeTypes.put( ".vst", "application/x-visio" ); mimeTypes.put( ".vsw", "application/x-visio" ); mimeTypes.put( ".w60", "application/wordperfect6.0" ); mimeTypes.put( ".w61", "application/wordperfect6.1" ); mimeTypes.put( ".w6w", "application/msword" ); mimeTypes.put( ".wav", "audio/x-wav" ); mimeTypes.put( ".wb1", "application/x-qpro" ); mimeTypes.put( ".wbmp", "image/vnd.wap.wbmp" ); mimeTypes.put( ".web", "application/vnd.xara" ); mimeTypes.put( ".wiz", "application/msword" ); mimeTypes.put( ".wk1", "application/x-123" ); mimeTypes.put( ".wmf", "windows/metafile" ); mimeTypes.put( ".wml", "text/vnd.wap.wml" ); mimeTypes.put( ".wmlc", "application/vnd.wap.wmlc" ); mimeTypes.put( ".wmls", "text/vnd.wap.wmlscript" ); mimeTypes.put( ".wmlsc", "application/vnd.wap.wmlscriptc" ); mimeTypes.put( ".word", "application/msword" ); mimeTypes.put( ".wp", "application/wordperfect" ); mimeTypes.put( ".wp5", "application/wordperfect6.0" ); mimeTypes.put( ".wp6", "application/wordperfect" ); mimeTypes.put( ".wpd", "application/x-wpwin" ); mimeTypes.put( ".wq1", "application/x-lotus" ); mimeTypes.put( ".wri", "application/x-wri" ); mimeTypes.put( ".wrl", "x-world/x-vrml" ); mimeTypes.put( ".wrz", "x-world/x-vrml" ); mimeTypes.put( ".wsc", "text/scriplet" ); mimeTypes.put( ".wsrc", "application/x-wais-source" ); mimeTypes.put( ".wtk", "application/x-wintalk" ); mimeTypes.put( ".xbm", "image/xbm" ); mimeTypes.put( ".xdr", "video/x-amt-demorun" ); mimeTypes.put( ".xgz", "xgl/drawing" ); mimeTypes.put( ".xif", "image/vnd.xiff" ); mimeTypes.put( ".xl", "application/excel" ); mimeTypes.put( ".xla", "application/x-msexcel" ); mimeTypes.put( ".xlb", "application/x-excel" ); mimeTypes.put( ".xlc", "application/x-excel" ); mimeTypes.put( ".xld", "application/x-excel" ); mimeTypes.put( ".xlk", "application/x-excel" ); mimeTypes.put( ".xll", "application/x-excel" ); mimeTypes.put( ".xlm", "application/x-excel" ); mimeTypes.put( ".xls", "application/x-msexcel" ); mimeTypes.put( ".xlt", "application/x-excel" ); mimeTypes.put( ".xlv", "application/x-excel" ); mimeTypes.put( ".xlw", "application/x-msexcel" ); mimeTypes.put( ".xm", "audio/xm" ); mimeTypes.put( ".xml", "text/xml" ); mimeTypes.put( ".xmz", "xgl/movie" ); mimeTypes.put( ".xpix", "application/x-vnd.ls-xpix" ); mimeTypes.put( ".xpm", "image/xpm" ); mimeTypes.put( ".x-png", "image/png" ); mimeTypes.put( ".xsr", "video/x-amt-showrun" ); mimeTypes.put( ".xwd", "image/x-xwindowdump" ); mimeTypes.put( ".xyz", "chemical/x-pdb" ); mimeTypes.put( ".z", "application/x-compressed" ); mimeTypes.put( ".zip", "multipart/x-zip" ); mimeTypes.put( ".zoo", "application/octet-stream" ); mimeTypes.put( ".zsh", "text/x-script.zsh" ); mimeTypes.put( ".cfml", "text/x-cfml-source" ); mimeTypes.put( ".cfm", "text/x-cfml-source" ); mimeTypes.put( ".rss", "text/xml" ); mimeTypes.put( ".rdf", "text/xml" ); mimeTypes.put( ".jar", "application/x-compressed" ); mimeTypes.put( ".war", "application/x-compressed" ); } /** * Determines the mime type for the filename by looking at the file extension * * It will return back "application/octet-stream" if not found * * Case insensitive lookup * * @param file * @return */ public static String getMimeType(String file){ file = file.toLowerCase().trim(); int c1 = file.lastIndexOf("."); if ( c1 == -1 ) return "application/octet-stream"; String mT = mimeTypes.get( file.substring(c1) ); if ( mT == null ) return "application/octet-stream"; else return mT; } }