You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 09:23:49 UTC

[sling-org-apache-sling-commons-mime] 08/22: SLING-974 separate core mime types from httpd project and sling additions in two files. Future updates from the httpd project just need to replace the contents of the META-INF/core_mime.types file. In addition do not replace but log potential redefinition of existing mappings.

This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.mime-2.1.0-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-mime.git

commit 5b7dd91b78b5f5787a8d5901150ae5eb9bceca29
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Sun May 17 17:08:47 2009 +0000

    SLING-974 separate core mime types from httpd project and sling
    additions in two files. Future updates from the httpd project
    just need to replace the contents of the META-INF/core_mime.types
    file. In addition do not replace but log potential redefinition
    of existing mappings.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775717 13f79535-47bb-0310-9956-ffa450edef68
---
 .../commons/mime/internal/MimeTypeServiceImpl.java |   58 +-
 .../META-INF/{mime.types => core_mime.types}       |   14 +-
 src/main/resources/META-INF/mime.types             | 1247 +-------------------
 .../mime/internal/MimeTypeServiceImplTest.java     |   57 +-
 4 files changed, 76 insertions(+), 1300 deletions(-)

diff --git a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImpl.java b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImpl.java
index 4dc5563..f11f084 100644
--- a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImpl.java
+++ b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImpl.java
@@ -37,7 +37,7 @@ import org.osgi.service.log.LogService;
 
 /**
  * The <code>MimeTypeServiceImpl</code> TODO
- *
+ * 
  * @scr.component immediate="false" metatype="no"
  * @scr.property name="service.vendor" value="The Apache Software Foundation"
  * @scr.property name="service.description" value="Sling Servlet"
@@ -48,6 +48,8 @@ import org.osgi.service.log.LogService;
  */
 public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
 
+    public static final String CORE_MIME_TYPES = "/META-INF/core_mime.types";
+
     public static final String MIME_TYPES = "/META-INF/mime.types";
 
     /** @scr.reference cardinality="0..1" policy="dynamic" */
@@ -112,16 +114,33 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
 
         mimeType = mimeType.toLowerCase();
 
-        String defaultExtension = null;
-        for (int i = 0; i < extensions.length; i++) {
-            if (extensions[i] != null && extensions[i].length() > 0) {
-                extensions[i] = extensions[i].toLowerCase();
+        String defaultExtension = extensionMap.get(mimeType);
+
+        for (String extension : extensions) {
+            if (extension != null && extension.length() > 0) {
+                extension = extension.toLowerCase();
 
-                this.mimeTab.put(extensions[i], mimeType);
+                String oldMimeType = mimeTab.get(extension);
+                if (oldMimeType == null) {
+
+                    log(LogService.LOG_DEBUG, "registerMimeType: Add mapping "
+                        + extension + "=" + mimeType, null);
+
+                    this.mimeTab.put(extension, mimeType);
+
+                    if (defaultExtension == null) {
+                        defaultExtension = extension;
+                    }
+
+                } else {
+
+                    log(LogService.LOG_INFO,
+                        "registerMimeType: Ignoring mapping " + extension + "="
+                            + mimeType + ": Mapping " + extension + "="
+                            + oldMimeType + " alread exists", null);
 
-                if (defaultExtension == null) {
-                    defaultExtension = extensions[i];
                 }
+
             }
         }
 
@@ -166,17 +185,16 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
         return list;
     }
 
-    private void handleBundle(Bundle bundle) {
-        URL mimes = bundle.getEntry(MIME_TYPES);
-        if (mimes != null) {
+    private void registerMimeType(URL mimetypes) {
+        if (mimetypes != null) {
             InputStream ins = null;
             try {
-                ins = mimes.openStream();
+                ins = mimetypes.openStream();
                 this.registerMimeType(ins);
             } catch (IOException ioe) {
                 // log but don't actually care
                 this.log(LogService.LOG_WARNING, "An error occurred reading "
-                    + mimes, ioe);
+                    + mimetypes, ioe);
             } finally {
                 if (ins != null) {
                     try {
@@ -209,12 +227,18 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
     protected void activate(ComponentContext context) {
         context.getBundleContext().addBundleListener(this);
 
+        // register core and default sling mime types
+        Bundle bundle = context.getBundleContext().getBundle();
+        registerMimeType(bundle.getEntry(CORE_MIME_TYPES));
+        registerMimeType(bundle.getEntry(MIME_TYPES));
+
         // register maps of existing bundles
         Bundle[] bundles = context.getBundleContext().getBundles();
         for (int i = 0; i < bundles.length; i++) {
             if ((bundles[i].getState() & (Bundle.RESOLVED | Bundle.STARTING
-                | Bundle.ACTIVE | Bundle.STOPPING)) != 0) {
-                this.handleBundle(bundles[i]);
+                | Bundle.ACTIVE | Bundle.STOPPING)) != 0
+                && bundles[i].getBundleId() != bundle.getBundleId()) {
+                this.registerMimeType(bundles[i].getEntry(MIME_TYPES));
             }
         }
     }
@@ -237,11 +261,11 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
         }
     }
 
-    // ---------- BundleListener -----------------------------------------------
+    // ---------- BundleListener ----------------------------------------------
 
     public void bundleChanged(BundleEvent event) {
         if (event.getType() == BundleEvent.RESOLVED) {
-            this.handleBundle(event.getBundle());
+            this.registerMimeType(event.getBundle().getEntry(MIME_TYPES));
         }
     }
 }
diff --git a/src/main/resources/META-INF/mime.types b/src/main/resources/META-INF/core_mime.types
similarity index 99%
copy from src/main/resources/META-INF/mime.types
copy to src/main/resources/META-INF/core_mime.types
index 309de31..eb2e21c 100644
--- a/src/main/resources/META-INF/mime.types
+++ b/src/main/resources/META-INF/core_mime.types
@@ -18,19 +18,7 @@
 #
 
 #
-# Sling Mappings
-application/compress           z
-application/msexcel            xls xlsx
-application/mspowerpoint       ppt pptx
-application/octet-stream       class exe msi
-application/photoshop          psd
-image/pict                     pict
-text/plain                     apt
-text/rtf                       rtf
-
-
-#
-# The rest of this file is copied from
+# This file is copied from
 #
 #   http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types
 #   Rev. 774215
diff --git a/src/main/resources/META-INF/mime.types b/src/main/resources/META-INF/mime.types
index 309de31..23894e0 100644
--- a/src/main/resources/META-INF/mime.types
+++ b/src/main/resources/META-INF/mime.types
@@ -18,7 +18,9 @@
 #
 
 #
-# Sling Mappings
+# Sling extensions to the core_mime.types
+#
+
 application/compress           z
 application/msexcel            xls xlsx
 application/mspowerpoint       ppt pptx
@@ -27,1246 +29,3 @@ application/photoshop          psd
 image/pict                     pict
 text/plain                     apt
 text/rtf                       rtf
-
-
-#
-# The rest of this file is copied from
-#
-#   http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types
-#   Rev. 774215
-#
-# See SLING-964 for more information
-#
-
-
-# This is a comment. I love comments.
-
-# This file controls what Internet media types are sent to the client for
-# given file extension(s).  Sending the correct media type to the client
-# is important so they know how to handle the content of the file.
-# Extra types can either be added here or by using an AddType directive
-# in your config files. For more information about Internet media types,
-# please read RFC 2045, 2046, 2047, 2048, and 2077.  The Internet media type
-# registry is at <http://www.iana.org/assignments/media-types/>.
-
-# MIME type                 Extensions
-application/activemessage
-application/andrew-inset            ez
-application/applefile
-application/applixware              aw
-application/atom+xml                atom
-application/atomcat+xml             atomcat
-application/atomicmail
-application/atomsvc+xml             atomsvc
-application/auth-policy+xml
-application/batch-smtp
-application/beep+xml
-application/cals-1840
-application/ccxml+xml               ccxml
-application/cea-2018+xml
-application/cellml+xml
-application/cnrp+xml
-application/commonground
-application/conference-info+xml
-application/cpl+xml
-application/csta+xml
-application/cstadata+xml
-application/cu-seeme                cu
-application/cybercash
-application/davmount+xml            davmount
-application/dca-rft
-application/dec-dx
-application/dialog-info+xml
-application/dicom
-application/dns
-application/dvcs
-application/ecmascript              ecma
-application/edi-consent
-application/edi-x12
-application/edifact
-application/emma+xml                emma
-application/epp+xml
-application/epub+zip                epub
-application/eshop
-application/example
-application/fastinfoset
-application/fastsoap
-application/fits
-application/font-tdpfr              pfr
-application/h224
-application/http
-application/hyperstudio             stk
-application/ibe-key-request+xml
-application/ibe-pkg-reply+xml
-application/ibe-pp-data
-application/iges
-application/im-iscomposing+xml
-application/index
-application/index.cmd
-application/index.obj
-application/index.response
-application/index.vnd
-application/iotp
-application/ipp
-application/isup
-application/java-archive            jar
-application/java-serialized-object      ser
-application/java-vm             class
-application/javascript              js
-application/json                json
-application/kpml-request+xml
-application/kpml-response+xml
-application/lost+xml                lostxml
-application/mac-binhex40            hqx
-application/mac-compactpro          cpt
-application/macwriteii
-application/marc                mrc
-application/mathematica             ma nb mb
-application/mathml+xml              mathml
-application/mbms-associated-procedure-description+xml
-application/mbms-deregister+xml
-application/mbms-envelope+xml
-application/mbms-msk+xml
-application/mbms-msk-response+xml
-application/mbms-protection-description+xml
-application/mbms-reception-report+xml
-application/mbms-register+xml
-application/mbms-register-response+xml
-application/mbms-user-service-description+xml
-application/mbox                mbox
-application/media_control+xml
-application/mediaservercontrol+xml      mscml
-application/mikey
-application/moss-keys
-application/moss-signature
-application/mosskey-data
-application/mosskey-request
-application/mp4                 mp4s
-application/mpeg4-generic
-application/mpeg4-iod
-application/mpeg4-iod-xmt
-application/msword              doc dot
-application/mxf                 mxf
-application/nasdata
-application/news-checkgroups
-application/news-groupinfo
-application/news-transmission
-application/nss
-application/ocsp-request
-application/ocsp-response
-application/octet-stream bin dms lha lrf lzh so iso dmg dist distz pkg bpk dump elc
-application/oda                 oda
-application/oebps-package+xml           opf
-application/ogg                 ogx
-application/onenote             onetoc onetoc2 onetmp onepkg
-application/parityfec
-application/patch-ops-error+xml         xer
-application/pdf                 pdf
-application/pgp-encrypted           pgp
-application/pgp-keys
-application/pgp-signature           asc sig
-application/pics-rules              prf
-application/pidf+xml
-application/pidf-diff+xml
-application/pkcs10              p10
-application/pkcs7-mime              p7m p7c
-application/pkcs7-signature         p7s
-application/pkix-cert               cer
-application/pkix-crl                crl
-application/pkix-pkipath            pkipath
-application/pkixcmp             pki
-application/pls+xml             pls
-application/poc-settings+xml
-application/postscript              ai eps ps
-application/prs.alvestrand.titrax-sheet
-application/prs.cww             cww
-application/prs.nprend
-application/prs.plucker
-application/qsig
-application/rdf+xml             rdf
-application/reginfo+xml             rif
-application/relax-ng-compact-syntax     rnc
-application/remote-printing
-application/resource-lists+xml          rl
-application/resource-lists-diff+xml     rld
-application/riscos
-application/rlmi+xml
-application/rls-services+xml            rs
-application/rsd+xml             rsd
-application/rss+xml             rss
-application/rtf                 rtf
-application/rtx
-application/samlassertion+xml
-application/samlmetadata+xml
-application/sbml+xml                sbml
-application/scvp-cv-request         scq
-application/scvp-cv-response            scs
-application/scvp-vp-request         spq
-application/scvp-vp-response            spp
-application/sdp                 sdp
-application/set-payment
-application/set-payment-initiation      setpay
-application/set-registration
-application/set-registration-initiation     setreg
-application/sgml
-application/sgml-open-catalog
-application/shf+xml             shf
-application/sieve
-application/simple-filter+xml
-application/simple-message-summary
-application/simplesymbolcontainer
-application/slate
-application/smil
-application/smil+xml                smi smil
-application/soap+fastinfoset
-application/soap+xml
-application/sparql-query            rq
-application/sparql-results+xml          srx
-application/spirits-event+xml
-application/srgs                gram
-application/srgs+xml                grxml
-application/ssml+xml                ssml
-application/timestamp-query
-application/timestamp-reply
-application/tve-trigger
-application/ulpfec
-application/vemmi
-application/vividence.scriptfile
-application/vnd.3gpp.bsf+xml
-application/vnd.3gpp.pic-bw-large       plb
-application/vnd.3gpp.pic-bw-small       psb
-application/vnd.3gpp.pic-bw-var         pvb
-application/vnd.3gpp.sms
-application/vnd.3gpp2.bcmcsinfo+xml
-application/vnd.3gpp2.sms
-application/vnd.3gpp2.tcap          tcap
-application/vnd.3m.post-it-notes        pwn
-application/vnd.accpac.simply.aso       aso
-application/vnd.accpac.simply.imp       imp
-application/vnd.acucobol            acu
-application/vnd.acucorp             atc acutc
-application/vnd.adobe.air-application-installer-package+zip air
-application/vnd.adobe.xdp+xml           xdp
-application/vnd.adobe.xfdf          xfdf
-application/vnd.aether.imp
-application/vnd.airzip.filesecure.azf       azf
-application/vnd.airzip.filesecure.azs       azs
-application/vnd.amazon.ebook            azw
-application/vnd.americandynamics.acc        acc
-application/vnd.amiga.ami           ami
-application/vnd.android.package-archive     apk
-application/vnd.anser-web-certificate-issue-initiation  cii
-application/vnd.anser-web-funds-transfer-initiation fti
-application/vnd.antix.game-component        atx
-application/vnd.apple.installer+xml     mpkg
-application/vnd.arastra.swi         swi
-application/vnd.audiograph          aep
-application/vnd.autopackage
-application/vnd.avistar+xml
-application/vnd.blueice.multipass       mpm
-application/vnd.bluetooth.ep.oob
-application/vnd.bmi             bmi
-application/vnd.businessobjects         rep
-application/vnd.cab-jscript
-application/vnd.canon-cpdl
-application/vnd.canon-lips
-application/vnd.cendio.thinlinc.clientconf
-application/vnd.chemdraw+xml            cdxml
-application/vnd.chipnuts.karaoke-mmd        mmd
-application/vnd.cinderella          cdy
-application/vnd.cirpack.isdn-ext
-application/vnd.claymore            cla
-application/vnd.clonk.c4group           c4g c4d c4f c4p c4u
-application/vnd.commerce-battelle
-application/vnd.commonspace         csp cst
-application/vnd.contact.cmsg            cdbcmsg
-application/vnd.cosmocaller         cmc
-application/vnd.crick.clicker           clkx
-application/vnd.crick.clicker.keyboard      clkk
-application/vnd.crick.clicker.palette       clkp
-application/vnd.crick.clicker.template      clkt
-application/vnd.crick.clicker.wordbank      clkw
-application/vnd.criticaltools.wbs+xml       wbs
-application/vnd.ctc-posml           pml
-application/vnd.ctct.ws+xml
-application/vnd.cups-pdf
-application/vnd.cups-postscript
-application/vnd.cups-ppd            ppd
-application/vnd.cups-raster
-application/vnd.cups-raw
-application/vnd.curl.car            car
-application/vnd.curl.pcurl          pcurl
-application/vnd.cybank
-application/vnd.data-vision.rdz         rdz
-application/vnd.denovo.fcselayout-link      fe_launch
-application/vnd.dir-bi.plate-dl-nosuffix
-application/vnd.dna             dna
-application/vnd.dolby.mlp           mlp
-application/vnd.dolby.mobile.1
-application/vnd.dolby.mobile.2
-application/vnd.dpgraph             dpg
-application/vnd.dreamfactory            dfac
-application/vnd.dvb.esgcontainer
-application/vnd.dvb.ipdcdftnotifaccess
-application/vnd.dvb.ipdcesgaccess
-application/vnd.dvb.ipdcroaming
-application/vnd.dvb.iptv.alfec-base
-application/vnd.dvb.iptv.alfec-enhancement
-application/vnd.dvb.notif-aggregate-root+xml
-application/vnd.dvb.notif-container+xml
-application/vnd.dvb.notif-generic+xml
-application/vnd.dvb.notif-ia-msglist+xml
-application/vnd.dvb.notif-ia-registration-request+xml
-application/vnd.dvb.notif-ia-registration-response+xml
-application/vnd.dvb.notif-init+xml
-application/vnd.dxr
-application/vnd.dynageo             geo
-application/vnd.ecdis-update
-application/vnd.ecowin.chart            mag
-application/vnd.ecowin.filerequest
-application/vnd.ecowin.fileupdate
-application/vnd.ecowin.series
-application/vnd.ecowin.seriesrequest
-application/vnd.ecowin.seriesupdate
-application/vnd.emclient.accessrequest+xml
-application/vnd.enliven             nml
-application/vnd.epson.esf           esf
-application/vnd.epson.msf           msf
-application/vnd.epson.quickanime        qam
-application/vnd.epson.salt          slt
-application/vnd.epson.ssf           ssf
-application/vnd.ericsson.quickcall
-application/vnd.eszigno3+xml            es3 et3
-application/vnd.etsi.aoc+xml
-application/vnd.etsi.cug+xml
-application/vnd.etsi.iptvcommand+xml
-application/vnd.etsi.iptvdiscovery+xml
-application/vnd.etsi.iptvprofile+xml
-application/vnd.etsi.iptvsad-bc+xml
-application/vnd.etsi.iptvsad-cod+xml
-application/vnd.etsi.iptvsad-npvr+xml
-application/vnd.etsi.iptvueprofile+xml
-application/vnd.etsi.mcid+xml
-application/vnd.etsi.sci+xml
-application/vnd.etsi.simservs+xml
-application/vnd.eudora.data
-application/vnd.ezpix-album         ez2
-application/vnd.ezpix-package           ez3
-application/vnd.f-secure.mobile
-application/vnd.fdf             fdf
-application/vnd.fdsn.mseed          mseed
-application/vnd.fdsn.seed           seed dataless
-application/vnd.ffsns
-application/vnd.fints
-application/vnd.flographit          gph
-application/vnd.fluxtime.clip           ftc
-application/vnd.font-fontforge-sfd
-application/vnd.framemaker          fm frame maker book
-application/vnd.frogans.fnc         fnc
-application/vnd.frogans.ltf         ltf
-application/vnd.fsc.weblaunch           fsc
-application/vnd.fujitsu.oasys           oas
-application/vnd.fujitsu.oasys2          oa2
-application/vnd.fujitsu.oasys3          oa3
-application/vnd.fujitsu.oasysgp         fg5
-application/vnd.fujitsu.oasysprs        bh2
-application/vnd.fujixerox.art-ex
-application/vnd.fujixerox.art4
-application/vnd.fujixerox.hbpl
-application/vnd.fujixerox.ddd           ddd
-application/vnd.fujixerox.docuworks     xdw
-application/vnd.fujixerox.docuworks.binder  xbd
-application/vnd.fut-misnet
-application/vnd.fuzzysheet          fzs
-application/vnd.genomatix.tuxedo        txd
-application/vnd.geogebra.file           ggb
-application/vnd.geogebra.tool           ggt
-application/vnd.geometry-explorer       gex gre
-application/vnd.gmx             gmx
-application/vnd.google-earth.kml+xml        kml
-application/vnd.google-earth.kmz        kmz
-application/vnd.grafeq              gqf gqs
-application/vnd.gridmp
-application/vnd.groove-account          gac
-application/vnd.groove-help         ghf
-application/vnd.groove-identity-message     gim
-application/vnd.groove-injector         grv
-application/vnd.groove-tool-message     gtm
-application/vnd.groove-tool-template        tpl
-application/vnd.groove-vcard            vcg
-application/vnd.handheld-entertainment+xml  zmm
-application/vnd.hbci                hbci
-application/vnd.hcl-bireports
-application/vnd.hhe.lesson-player       les
-application/vnd.hp-hpgl             hpgl
-application/vnd.hp-hpid             hpid
-application/vnd.hp-hps              hps
-application/vnd.hp-jlyt             jlt
-application/vnd.hp-pcl              pcl
-application/vnd.hp-pclxl            pclxl
-application/vnd.httphone
-application/vnd.hydrostatix.sof-data        sfd-hdstx
-application/vnd.hzn-3d-crossword        x3d
-application/vnd.ibm.afplinedata
-application/vnd.ibm.electronic-media
-application/vnd.ibm.minipay         mpy
-application/vnd.ibm.modcap          afp listafp list3820
-application/vnd.ibm.rights-management       irm
-application/vnd.ibm.secure-container        sc
-application/vnd.iccprofile          icc icm
-application/vnd.igloader            igl
-application/vnd.immervision-ivp         ivp
-application/vnd.immervision-ivu         ivu
-application/vnd.informedcontrol.rms+xml
-application/vnd.informix-visionary
-application/vnd.intercon.formnet        xpw xpx
-application/vnd.intertrust.digibox
-application/vnd.intertrust.nncp
-application/vnd.intu.qbo            qbo
-application/vnd.intu.qfx            qfx
-application/vnd.iptc.g2.conceptitem+xml
-application/vnd.iptc.g2.knowledgeitem+xml
-application/vnd.iptc.g2.newsitem+xml
-application/vnd.iptc.g2.packageitem+xml
-application/vnd.ipunplugged.rcprofile       rcprofile
-application/vnd.irepository.package+xml     irp
-application/vnd.is-xpr              xpr
-application/vnd.jam             jam
-application/vnd.japannet-directory-service
-application/vnd.japannet-jpnstore-wakeup
-application/vnd.japannet-payment-wakeup
-application/vnd.japannet-registration
-application/vnd.japannet-registration-wakeup
-application/vnd.japannet-setstore-wakeup
-application/vnd.japannet-verification
-application/vnd.japannet-verification-wakeup
-application/vnd.jcp.javame.midlet-rms       rms
-application/vnd.jisp                jisp
-application/vnd.joost.joda-archive      joda
-application/vnd.kahootz             ktz ktr
-application/vnd.kde.karbon          karbon
-application/vnd.kde.kchart          chrt
-application/vnd.kde.kformula            kfo
-application/vnd.kde.kivio           flw
-application/vnd.kde.kontour         kon
-application/vnd.kde.kpresenter          kpr kpt
-application/vnd.kde.kspread         ksp
-application/vnd.kde.kword           kwd kwt
-application/vnd.kenameaapp          htke
-application/vnd.kidspiration            kia
-application/vnd.kinar               kne knp
-application/vnd.koan                skp skd skt skm
-application/vnd.kodak-descriptor        sse
-application/vnd.liberty-request+xml
-application/vnd.llamagraphics.life-balance.desktop  lbd
-application/vnd.llamagraphics.life-balance.exchange+xml lbe
-application/vnd.lotus-1-2-3         123
-application/vnd.lotus-approach          apr
-application/vnd.lotus-freelance         pre
-application/vnd.lotus-notes         nsf
-application/vnd.lotus-organizer         org
-application/vnd.lotus-screencam         scm
-application/vnd.lotus-wordpro           lwp
-application/vnd.macports.portpkg        portpkg
-application/vnd.marlin.drm.actiontoken+xml
-application/vnd.marlin.drm.conftoken+xml
-application/vnd.marlin.drm.license+xml
-application/vnd.marlin.drm.mdcf
-application/vnd.mcd             mcd
-application/vnd.medcalcdata         mc1
-application/vnd.mediastation.cdkey      cdkey
-application/vnd.meridian-slingshot
-application/vnd.mfer                mwf
-application/vnd.mfmp                mfm
-application/vnd.micrografx.flo          flo
-application/vnd.micrografx.igx          igx
-application/vnd.mif             mif
-application/vnd.minisoft-hp3000-save
-application/vnd.mitsubishi.misty-guard.trustweb
-application/vnd.mobius.daf          daf
-application/vnd.mobius.dis          dis
-application/vnd.mobius.mbk          mbk
-application/vnd.mobius.mqy          mqy
-application/vnd.mobius.msl          msl
-application/vnd.mobius.plc          plc
-application/vnd.mobius.txf          txf
-application/vnd.mophun.application      mpn
-application/vnd.mophun.certificate      mpc
-application/vnd.motorola.flexsuite
-application/vnd.motorola.flexsuite.adsi
-application/vnd.motorola.flexsuite.fis
-application/vnd.motorola.flexsuite.gotap
-application/vnd.motorola.flexsuite.kmr
-application/vnd.motorola.flexsuite.ttc
-application/vnd.motorola.flexsuite.wem
-application/vnd.motorola.iprm
-application/vnd.mozilla.xul+xml         xul
-application/vnd.ms-artgalry         cil
-application/vnd.ms-asf              asf
-application/vnd.ms-cab-compressed       cab
-application/vnd.ms-excel            xls xlm xla xlc xlt xlw
-application/vnd.ms-excel.addin.macroenabled.12      xlam
-application/vnd.ms-excel.sheet.binary.macroenabled.12   xlsb
-application/vnd.ms-excel.sheet.macroenabled.12      xlsm
-application/vnd.ms-excel.template.macroenabled.12   xltm
-application/vnd.ms-fontobject           eot
-application/vnd.ms-htmlhelp         chm
-application/vnd.ms-ims              ims
-application/vnd.ms-lrm              lrm
-application/vnd.ms-pki.seccat           cat
-application/vnd.ms-pki.stl          stl
-application/vnd.ms-playready.initiator+xml
-application/vnd.ms-powerpoint           ppt pps pot
-application/vnd.ms-powerpoint.addin.macroenabled.12     ppam
-application/vnd.ms-powerpoint.presentation.macroenabled.12  pptm
-application/vnd.ms-powerpoint.slide.macroenabled.12     sldm
-application/vnd.ms-powerpoint.slideshow.macroenabled.12     ppsm
-application/vnd.ms-powerpoint.template.macroenabled.12      potm
-application/vnd.ms-project          mpp mpt
-application/vnd.ms-tnef
-application/vnd.ms-wmdrm.lic-chlg-req
-application/vnd.ms-wmdrm.lic-resp
-application/vnd.ms-wmdrm.meter-chlg-req
-application/vnd.ms-wmdrm.meter-resp
-application/vnd.ms-word.document.macroenabled.12    docm
-application/vnd.ms-word.template.macroenabled.12    dotm
-application/vnd.ms-works            wps wks wcm wdb
-application/vnd.ms-wpl              wpl
-application/vnd.ms-xpsdocument          xps
-application/vnd.mseq                mseq
-application/vnd.msign
-application/vnd.multiad.creator
-application/vnd.multiad.creator.cif
-application/vnd.music-niff
-application/vnd.musician            mus
-application/vnd.muvee.style         msty
-application/vnd.ncd.control
-application/vnd.ncd.reference
-application/vnd.nervana
-application/vnd.netfpx
-application/vnd.neurolanguage.nlu       nlu
-application/vnd.noblenet-directory      nnd
-application/vnd.noblenet-sealer         nns
-application/vnd.noblenet-web            nnw
-application/vnd.nokia.catalogs
-application/vnd.nokia.conml+wbxml
-application/vnd.nokia.conml+xml
-application/vnd.nokia.isds-radio-presets
-application/vnd.nokia.iptv.config+xml
-application/vnd.nokia.landmark+wbxml
-application/vnd.nokia.landmark+xml
-application/vnd.nokia.landmarkcollection+xml
-application/vnd.nokia.n-gage.ac+xml
-application/vnd.nokia.n-gage.data       ngdat
-application/vnd.nokia.n-gage.symbian.install    n-gage
-application/vnd.nokia.ncd
-application/vnd.nokia.pcd+wbxml
-application/vnd.nokia.pcd+xml
-application/vnd.nokia.radio-preset      rpst
-application/vnd.nokia.radio-presets     rpss
-application/vnd.novadigm.edm            edm
-application/vnd.novadigm.edx            edx
-application/vnd.novadigm.ext            ext
-application/vnd.oasis.opendocument.chart        odc
-application/vnd.oasis.opendocument.chart-template   otc
-application/vnd.oasis.opendocument.database     odb
-application/vnd.oasis.opendocument.formula      odf
-application/vnd.oasis.opendocument.formula-template odft
-application/vnd.oasis.opendocument.graphics     odg
-application/vnd.oasis.opendocument.graphics-template    otg
-application/vnd.oasis.opendocument.image        odi
-application/vnd.oasis.opendocument.image-template   oti
-application/vnd.oasis.opendocument.presentation     odp
-application/vnd.oasis.opendocument.presentation-template otp
-application/vnd.oasis.opendocument.spreadsheet      ods
-application/vnd.oasis.opendocument.spreadsheet-template ots
-application/vnd.oasis.opendocument.text         odt
-application/vnd.oasis.opendocument.text-master      otm
-application/vnd.oasis.opendocument.text-template    ott
-application/vnd.oasis.opendocument.text-web     oth
-application/vnd.obn
-application/vnd.olpc-sugar          xo
-application/vnd.oma-scws-config
-application/vnd.oma-scws-http-request
-application/vnd.oma-scws-http-response
-application/vnd.oma.bcast.associated-procedure-parameter+xml
-application/vnd.oma.bcast.drm-trigger+xml
-application/vnd.oma.bcast.imd+xml
-application/vnd.oma.bcast.ltkm
-application/vnd.oma.bcast.notification+xml
-application/vnd.oma.bcast.provisioningtrigger
-application/vnd.oma.bcast.sgboot
-application/vnd.oma.bcast.sgdd+xml
-application/vnd.oma.bcast.sgdu
-application/vnd.oma.bcast.simple-symbol-container
-application/vnd.oma.bcast.smartcard-trigger+xml
-application/vnd.oma.bcast.sprov+xml
-application/vnd.oma.bcast.stkm
-application/vnd.oma.dcd
-application/vnd.oma.dcdc
-application/vnd.oma.dd2+xml         dd2
-application/vnd.oma.drm.risd+xml
-application/vnd.oma.group-usage-list+xml
-application/vnd.oma.poc.detailed-progress-report+xml
-application/vnd.oma.poc.final-report+xml
-application/vnd.oma.poc.groups+xml
-application/vnd.oma.poc.invocation-descriptor+xml
-application/vnd.oma.poc.optimized-progress-report+xml
-application/vnd.oma.xcap-directory+xml
-application/vnd.omads-email+xml
-application/vnd.omads-file+xml
-application/vnd.omads-folder+xml
-application/vnd.omaloc-supl-init
-application/vnd.openofficeorg.extension     oxt
-application/vnd.openxmlformats-officedocument.presentationml.presentation pptx
-application/vnd.openxmlformats-officedocument.presentationml.slide  sldx
-application/vnd.openxmlformats-officedocument.presentationml.slideshow  ppsx
-application/vnd.openxmlformats-officedocument.presentationml.template   potx
-application/vnd.openxmlformats-officedocument.spreadsheetml.sheet   xlsx
-application/vnd.openxmlformats-officedocument.spreadsheetml.template    xltx
-application/vnd.openxmlformats-officedocument.wordprocessingml.document docx
-application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx
-application/vnd.osa.netdeploy
-application/vnd.osgi.bundle
-application/vnd.osgi.dp             dp
-application/vnd.otps.ct-kip+xml
-application/vnd.palm                pdb pqa oprc
-application/vnd.paos.xml
-application/vnd.pg.format           str
-application/vnd.pg.osasli           ei6
-application/vnd.piaccess.application-licence
-application/vnd.picsel              efif
-application/vnd.poc.group-advertisement+xml
-application/vnd.pocketlearn         plf
-application/vnd.powerbuilder6           pbd
-application/vnd.powerbuilder6-s
-application/vnd.powerbuilder7
-application/vnd.powerbuilder7-s
-application/vnd.powerbuilder75
-application/vnd.powerbuilder75-s
-application/vnd.preminet
-application/vnd.previewsystems.box      box
-application/vnd.proteus.magazine        mgz
-application/vnd.publishare-delta-tree       qps
-application/vnd.pvi.ptid1           ptid
-application/vnd.pwg-multiplexed
-application/vnd.pwg-xhtml-print+xml
-application/vnd.qualcomm.brew-app-res
-application/vnd.quark.quarkxpress       qxd qxt qwd qwt qxl qxb
-application/vnd.rapid
-application/vnd.recordare.musicxml      mxl
-application/vnd.recordare.musicxml+xml      musicxml
-application/vnd.renlearn.rlprint
-application/vnd.rim.cod             cod
-application/vnd.rn-realmedia            rm
-application/vnd.route66.link66+xml      link66
-application/vnd.ruckus.download
-application/vnd.s3sms
-application/vnd.sbm.cid
-application/vnd.sbm.mid2
-application/vnd.scribus
-application/vnd.sealed.3df
-application/vnd.sealed.csf
-application/vnd.sealed.doc
-application/vnd.sealed.eml
-application/vnd.sealed.mht
-application/vnd.sealed.net
-application/vnd.sealed.ppt
-application/vnd.sealed.tiff
-application/vnd.sealed.xls
-application/vnd.sealedmedia.softseal.html
-application/vnd.sealedmedia.softseal.pdf
-application/vnd.seemail             see
-application/vnd.sema                sema
-application/vnd.semd                semd
-application/vnd.semf                semf
-application/vnd.shana.informed.formdata     ifm
-application/vnd.shana.informed.formtemplate itp
-application/vnd.shana.informed.interchange  iif
-application/vnd.shana.informed.package      ipk
-application/vnd.simtech-mindmapper      twd twds
-application/vnd.smaf                mmf
-application/vnd.smart.teacher           teacher
-application/vnd.software602.filler.form+xml
-application/vnd.software602.filler.form-xml-zip
-application/vnd.solent.sdkm+xml         sdkm sdkd
-application/vnd.spotfire.dxp            dxp
-application/vnd.spotfire.sfs            sfs
-application/vnd.sss-cod
-application/vnd.sss-dtf
-application/vnd.sss-ntf
-application/vnd.stardivision.calc       sdc
-application/vnd.stardivision.draw       sda
-application/vnd.stardivision.impress        sdd
-application/vnd.stardivision.math       smf
-application/vnd.stardivision.writer     sdw
-application/vnd.stardivision.writer     vor
-application/vnd.stardivision.writer-global  sgl
-application/vnd.street-stream
-application/vnd.sun.xml.calc            sxc
-application/vnd.sun.xml.calc.template       stc
-application/vnd.sun.xml.draw            sxd
-application/vnd.sun.xml.draw.template       std
-application/vnd.sun.xml.impress         sxi
-application/vnd.sun.xml.impress.template    sti
-application/vnd.sun.xml.math            sxm
-application/vnd.sun.xml.writer          sxw
-application/vnd.sun.xml.writer.global       sxg
-application/vnd.sun.xml.writer.template     stw
-application/vnd.sun.wadl+xml
-application/vnd.sus-calendar            sus susp
-application/vnd.svd             svd
-application/vnd.swiftview-ics
-application/vnd.symbian.install         sis sisx
-application/vnd.syncml+xml          xsm
-application/vnd.syncml.dm+wbxml         bdm
-application/vnd.syncml.dm+xml           xdm
-application/vnd.syncml.dm.notification
-application/vnd.syncml.ds.notification
-application/vnd.tao.intent-module-archive   tao
-application/vnd.tmobile-livetv          tmo
-application/vnd.trid.tpt            tpt
-application/vnd.triscape.mxs            mxs
-application/vnd.trueapp             tra
-application/vnd.truedoc
-application/vnd.ufdl                ufd ufdl
-application/vnd.uiq.theme           utz
-application/vnd.umajin              umj
-application/vnd.unity               unityweb
-application/vnd.uoml+xml            uoml
-application/vnd.uplanet.alert
-application/vnd.uplanet.alert-wbxml
-application/vnd.uplanet.bearer-choice
-application/vnd.uplanet.bearer-choice-wbxml
-application/vnd.uplanet.cacheop
-application/vnd.uplanet.cacheop-wbxml
-application/vnd.uplanet.channel
-application/vnd.uplanet.channel-wbxml
-application/vnd.uplanet.list
-application/vnd.uplanet.list-wbxml
-application/vnd.uplanet.listcmd
-application/vnd.uplanet.listcmd-wbxml
-application/vnd.uplanet.signal
-application/vnd.vcx             vcx
-application/vnd.vd-study
-application/vnd.vectorworks
-application/vnd.vidsoft.vidconference
-application/vnd.visio               vsd vst vss vsw
-application/vnd.visionary           vis
-application/vnd.vividence.scriptfile
-application/vnd.vsf             vsf
-application/vnd.wap.sic
-application/vnd.wap.slc
-application/vnd.wap.wbxml           wbxml
-application/vnd.wap.wmlc            wmlc
-application/vnd.wap.wmlscriptc          wmlsc
-application/vnd.webturbo            wtb
-application/vnd.wfa.wsc
-application/vnd.wmc
-application/vnd.wmf.bootstrap
-application/vnd.wordperfect         wpd
-application/vnd.wqd             wqd
-application/vnd.wrq-hp3000-labelled
-application/vnd.wt.stf              stf
-application/vnd.wv.csp+wbxml
-application/vnd.wv.csp+xml
-application/vnd.wv.ssp+xml
-application/vnd.xara                xar
-application/vnd.xfdl                xfdl
-application/vnd.xfdl.webform
-application/vnd.xmi+xml
-application/vnd.xmpie.cpkg
-application/vnd.xmpie.dpkg
-application/vnd.xmpie.plan
-application/vnd.xmpie.ppkg
-application/vnd.xmpie.xlim
-application/vnd.yamaha.hv-dic           hvd
-application/vnd.yamaha.hv-script        hvs
-application/vnd.yamaha.hv-voice         hvp
-application/vnd.yamaha.openscoreformat          osf
-application/vnd.yamaha.openscoreformat.osfpvg+xml   osfpvg
-application/vnd.yamaha.smaf-audio       saf
-application/vnd.yamaha.smaf-phrase      spf
-application/vnd.yellowriver-custom-menu     cmp
-application/vnd.zul             zir zirz
-application/vnd.zzazz.deck+xml          zaz
-application/voicexml+xml            vxml
-application/watcherinfo+xml
-application/whoispp-query
-application/whoispp-response
-application/winhlp              hlp
-application/wita
-application/wordperfect5.1
-application/wsdl+xml                wsdl
-application/wspolicy+xml            wspolicy
-application/x-abiword               abw
-application/x-ace-compressed            ace
-application/x-authorware-bin            aab x32 u32 vox
-application/x-authorware-map            aam
-application/x-authorware-seg            aas
-application/x-bcpio             bcpio
-application/x-bittorrent            torrent
-application/x-bzip              bz
-application/x-bzip2             bz2 boz
-application/x-cdlink                vcd
-application/x-chat              chat
-application/x-chess-pgn             pgn
-application/x-compress
-application/x-cpio              cpio
-application/x-csh               csh
-application/x-debian-package            deb udeb
-application/x-director          dir dcr dxr cst cct cxt w3d fgd swa
-application/x-doom              wad
-application/x-dtbncx+xml            ncx
-application/x-dtbook+xml            dtb
-application/x-dtbresource+xml           res
-application/x-dvi               dvi
-application/x-font-bdf              bdf
-application/x-font-dos
-application/x-font-framemaker
-application/x-font-ghostscript          gsf
-application/x-font-libgrx
-application/x-font-linux-psf            psf
-application/x-font-otf              otf
-application/x-font-pcf              pcf
-application/x-font-snf              snf
-application/x-font-speedo
-application/x-font-sunos-news
-application/x-font-ttf              ttf ttc
-application/x-font-type1            pfa pfb pfm afm
-application/x-font-vfont
-application/x-futuresplash          spl
-application/x-gnumeric              gnumeric
-application/x-gtar              gtar
-application/x-gzip
-application/x-hdf               hdf
-application/x-java-jnlp-file            jnlp
-application/x-latex             latex
-application/x-mobipocket-ebook          prc mobi
-application/x-ms-wmd                wmd
-application/x-ms-wmz                wmz
-application/x-msaccess              mdb
-application/x-msbinder              obd
-application/x-mscardfile            crd
-application/x-msclip                clp
-application/x-msdownload            exe dll com bat msi
-application/x-msmediaview           mvb m13 m14
-application/x-msmetafile            wmf
-application/x-msmoney               mny
-application/x-mspublisher           pub
-application/x-msschedule            scd
-application/x-msterminal            trm
-application/x-mswrite               wri
-application/x-netcdf                nc cdf
-application/x-pkcs12                p12 pfx
-application/x-pkcs7-certificates        p7b spc
-application/x-pkcs7-certreqresp         p7r
-application/x-rar-compressed            rar
-application/x-sh                sh
-application/x-shar              shar
-application/x-shockwave-flash           swf
-application/x-stuffit               sit
-application/x-stuffitx              sitx
-application/x-sv4cpio               sv4cpio
-application/x-sv4crc                sv4crc
-application/x-tar               tar
-application/x-tcl               tcl
-application/x-tex               tex
-application/x-tex-tfm               tfm
-application/x-texinfo               texinfo texi
-application/x-ustar             ustar
-application/x-wais-source           src
-application/x-x509-ca-cert          der crt
-application/x-xfig              fig
-application/x-xpinstall             xpi
-application/x400-bp
-application/xcap-att+xml
-application/xcap-caps+xml
-application/xcap-el+xml
-application/xcap-error+xml
-application/xcap-ns+xml
-application/xcon-conference-info-diff+xml
-application/xcon-conference-info+xml
-application/xenc+xml                xenc
-application/xhtml+xml               xhtml xht
-application/xhtml-voice+xml
-application/xml                 xml xsl
-application/xml-dtd             dtd
-application/xml-external-parsed-entity
-application/xmpp+xml
-application/xop+xml             xop
-application/xslt+xml                xslt
-application/xspf+xml                xspf
-application/xv+xml              mxml xhvml xvml xvm
-application/zip                 zip
-audio/32kadpcm
-audio/3gpp
-audio/3gpp2
-audio/ac3
-audio/adpcm                 adp
-audio/amr
-audio/amr-wb
-audio/amr-wb+
-audio/asc
-audio/basic                 au snd
-audio/bv16
-audio/bv32
-audio/clearmode
-audio/cn
-audio/dat12
-audio/dls
-audio/dsr-es201108
-audio/dsr-es202050
-audio/dsr-es202211
-audio/dsr-es202212
-audio/dvi4
-audio/eac3
-audio/evrc
-audio/evrc-qcp
-audio/evrc0
-audio/evrc1
-audio/evrcb
-audio/evrcb0
-audio/evrcb1
-audio/evrcwb
-audio/evrcwb0
-audio/evrcwb1
-audio/example
-audio/g719
-audio/g722
-audio/g7221
-audio/g723
-audio/g726-16
-audio/g726-24
-audio/g726-32
-audio/g726-40
-audio/g728
-audio/g729
-audio/g7291
-audio/g729d
-audio/g729e
-audio/gsm
-audio/gsm-efr
-audio/ilbc
-audio/l16
-audio/l20
-audio/l24
-audio/l8
-audio/lpc
-audio/midi                  mid midi kar rmi
-audio/mobile-xmf
-audio/mp4                   mp4a
-audio/mp4a-latm
-audio/mpa
-audio/mpa-robust
-audio/mpeg                  mpga mp2 mp2a mp3 m2a m3a
-audio/mpeg4-generic
-audio/ogg                   oga ogg spx
-audio/parityfec
-audio/pcma
-audio/pcma-wb
-audio/pcmu-wb
-audio/pcmu
-audio/prs.sid
-audio/qcelp
-audio/red
-audio/rtp-enc-aescm128
-audio/rtp-midi
-audio/rtx
-audio/smv
-audio/smv0
-audio/smv-qcp
-audio/sp-midi
-audio/t140c
-audio/t38
-audio/telephone-event
-audio/tone
-audio/ulpfec
-audio/vdvi
-audio/vmr-wb
-audio/vnd.3gpp.iufp
-audio/vnd.4sb
-audio/vnd.audiokoz
-audio/vnd.celp
-audio/vnd.cisco.nse
-audio/vnd.cmles.radio-events
-audio/vnd.cns.anp1
-audio/vnd.cns.inf1
-audio/vnd.digital-winds             eol
-audio/vnd.dlna.adts
-audio/vnd.dolby.heaac.1
-audio/vnd.dolby.heaac.2
-audio/vnd.dolby.mlp
-audio/vnd.dolby.mps
-audio/vnd.dolby.pl2
-audio/vnd.dolby.pl2x
-audio/vnd.dolby.pl2z
-audio/vnd.dts                   dts
-audio/vnd.dts.hd                dtshd
-audio/vnd.everad.plj
-audio/vnd.hns.audio
-audio/vnd.lucent.voice              lvp
-audio/vnd.ms-playready.media.pya        pya
-audio/vnd.nokia.mobile-xmf
-audio/vnd.nortel.vbk
-audio/vnd.nuera.ecelp4800           ecelp4800
-audio/vnd.nuera.ecelp7470           ecelp7470
-audio/vnd.nuera.ecelp9600           ecelp9600
-audio/vnd.octel.sbc
-audio/vnd.qcelp
-audio/vnd.rhetorex.32kadpcm
-audio/vnd.sealedmedia.softseal.mpeg
-audio/vnd.vmx.cvsd
-audio/vorbis
-audio/vorbis-config
-audio/wav                   wav
-audio/x-aac                 aac
-audio/x-aiff                    aif aiff aifc
-audio/x-mpegurl                 m3u
-audio/x-ms-wax                  wax
-audio/x-ms-wma                  wma
-audio/x-pn-realaudio                ram ra
-audio/x-pn-realaudio-plugin         rmp
-audio/x-wav                 wav
-chemical/x-cdx                  cdx
-chemical/x-cif                  cif
-chemical/x-cmdf                 cmdf
-chemical/x-cml                  cml
-chemical/x-csml                 csml
-chemical/x-pdb                  pdb
-chemical/x-xyz                  xyz
-image/bmp                   bmp
-image/cgm                   cgm
-image/example
-image/fits
-image/g3fax                 g3
-image/gif                   gif
-image/ief                   ief
-image/jp2
-image/jpeg                  jpeg jpg jpe
-image/jpm
-image/jpx
-image/naplps
-image/png                   png
-image/prs.btif                  btif
-image/prs.pti
-image/svg+xml                   svg svgz
-image/t38
-image/tiff                  tiff tif
-image/tiff-fx
-image/vnd.adobe.photoshop           psd
-image/vnd.cns.inf2
-image/vnd.djvu                  djvu djv
-image/vnd.dwg                   dwg
-image/vnd.dxf                   dxf
-image/vnd.fastbidsheet              fbs
-image/vnd.fpx                   fpx
-image/vnd.fst                   fst
-image/vnd.fujixerox.edmics-mmr          mmr
-image/vnd.fujixerox.edmics-rlc          rlc
-image/vnd.globalgraphics.pgb
-image/vnd.microsoft.icon
-image/vnd.mix
-image/vnd.ms-modi               mdi
-image/vnd.net-fpx               npx
-image/vnd.radiance
-image/vnd.sealed.png
-image/vnd.sealedmedia.softseal.gif
-image/vnd.sealedmedia.softseal.jpg
-image/vnd.svf
-image/vnd.wap.wbmp              wbmp
-image/vnd.xiff                  xif
-image/x-cmu-raster              ras
-image/x-cmx                 cmx
-image/x-freehand                fh fhc fh4 fh5 fh7
-image/x-icon                    ico
-image/x-pcx                 pcx
-image/x-pict                    pic pct
-image/x-portable-anymap             pnm
-image/x-portable-bitmap             pbm
-image/x-portable-graymap            pgm
-image/x-portable-pixmap             ppm
-image/x-rgb                 rgb
-image/x-xbitmap                 xbm
-image/x-xpixmap                 xpm
-image/x-xwindowdump             xwd
-message/cpim
-message/delivery-status
-message/disposition-notification
-message/example
-message/external-body
-message/global
-message/global-delivery-status
-message/global-disposition-notification
-message/global-headers
-message/http
-message/imdn+xml
-message/news
-message/partial
-message/rfc822                  eml mime
-message/s-http
-message/sip
-message/sipfrag
-message/tracking-status
-message/vnd.si.simp
-model/example
-model/iges                  igs iges
-model/mesh                  msh mesh silo
-model/vnd.dwf                   dwf
-model/vnd.flatland.3dml
-model/vnd.gdl                   gdl
-model/vnd.gs-gdl
-model/vnd.gs.gdl
-model/vnd.gtw                   gtw
-model/vnd.moml+xml
-model/vnd.mts                   mts
-model/vnd.parasolid.transmit.binary
-model/vnd.parasolid.transmit.text
-model/vnd.vtu                   vtu
-model/vrml                  wrl vrml
-multipart/alternative
-multipart/appledouble
-multipart/byteranges
-multipart/digest
-multipart/encrypted
-multipart/example
-multipart/form-data
-multipart/header-set
-multipart/mixed
-multipart/parallel
-multipart/related
-multipart/report
-multipart/signed
-multipart/voice-message
-text/calendar                   ics ifb
-text/css                    css
-text/csv                    csv
-text/directory
-text/dns
-text/ecmascript
-text/enriched
-text/example
-text/html                   html htm
-text/javascript
-text/parityfec
-text/plain                  txt text conf def list log in
-text/prs.fallenstein.rst
-text/prs.lines.tag              dsc
-text/red
-text/rfc822-headers
-text/richtext                   rtx
-text/rtf
-text/rtp-enc-aescm128
-text/rtx
-text/sgml                   sgml sgm
-text/t140
-text/tab-separated-values           tsv
-text/troff                  t tr roff man me ms
-text/ulpfec
-text/uri-list                   uri uris urls
-text/vnd.abc
-text/vnd.curl                   curl
-text/vnd.curl.dcurl             dcurl
-text/vnd.curl.scurl             scurl
-text/vnd.curl.mcurl             mcurl
-text/vnd.dmclientscript
-text/vnd.esmertec.theme-descriptor
-text/vnd.fly                    fly
-text/vnd.fmi.flexstor               flx
-text/vnd.graphviz               gv
-text/vnd.in3d.3dml              3dml
-text/vnd.in3d.spot              spot
-text/vnd.iptc.newsml
-text/vnd.iptc.nitf
-text/vnd.latex-z
-text/vnd.motorola.reflex
-text/vnd.ms-mediapackage
-text/vnd.net2phone.commcenter.command
-text/vnd.si.uricatalogue
-text/vnd.sun.j2me.app-descriptor        jad
-text/vnd.trolltech.linguist
-text/vnd.wap.si
-text/vnd.wap.sl
-text/vnd.wap.wml                wml
-text/vnd.wap.wmlscript              wmls
-text/x-asm                  s asm
-text/x-c                    c cc cxx cpp h hh dic
-text/x-fortran                  f for f77 f90
-text/x-pascal                   p pas
-text/x-java-source              java
-text/x-setext                   etx
-text/x-uuencode                 uu
-text/x-vcalendar                vcs
-text/x-vcard                    vcf
-text/xml
-text/xml-external-parsed-entity
-video/3gpp                  3gp
-video/3gpp-tt
-video/3gpp2                 3g2
-video/bmpeg
-video/bt656
-video/celb
-video/dv
-video/example
-video/h261                  h261
-video/h263                  h263
-video/h263-1998
-video/h263-2000
-video/h264                  h264
-video/jpeg                  jpgv
-video/jpeg2000
-video/jpm                   jpm jpgm
-video/mj2                   mj2 mjp2
-video/mp1s
-video/mp2p
-video/mp2t
-video/mp4                   mp4 mp4v mpg4
-video/mp4v-es
-video/mpeg                  mpeg mpg mpe m1v m2v
-video/mpeg4-generic
-video/mpv
-video/nv
-video/ogg                   ogv
-video/parityfec
-video/pointer
-video/quicktime                 qt mov
-video/raw
-video/rtp-enc-aescm128
-video/rtx
-video/smpte292m
-video/ulpfec
-video/vc1
-video/vnd.cctv
-video/vnd.dlna.mpeg-tts
-video/vnd.fvt                   fvt
-video/vnd.hns.video
-video/vnd.iptvforum.1dparityfec-1010
-video/vnd.iptvforum.1dparityfec-2005
-video/vnd.iptvforum.2dparityfec-1010
-video/vnd.iptvforum.2dparityfec-2005
-video/vnd.iptvforum.ttsavc
-video/vnd.iptvforum.ttsmpeg2
-video/vnd.motorola.video
-video/vnd.motorola.videop
-video/vnd.mpegurl               mxu m4u
-video/vnd.ms-playready.media.pyv        pyv
-video/vnd.nokia.interleaved-multimedia
-video/vnd.nokia.videovoip
-video/vnd.objectvideo
-video/vnd.sealed.mpeg1
-video/vnd.sealed.mpeg4
-video/vnd.sealed.swf
-video/vnd.sealedmedia.softseal.mov
-video/vnd.vivo                  viv
-video/x-f4v                 f4v
-video/x-fli                 fli
-video/x-flv                 flv
-video/x-m4v                 m4v
-video/x-ms-asf                  asf asx
-video/x-ms-wm                   wm
-video/x-ms-wmv                  wmv
-video/x-ms-wmx                  wmx
-video/x-ms-wvx                  wvx
-video/x-msvideo                 avi
-video/x-sgi-movie               movie
-x-conference/x-cooltalk             ice
diff --git a/src/test/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImplTest.java b/src/test/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImplTest.java
index a4b6db3..de2c227 100644
--- a/src/test/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImplTest.java
+++ b/src/test/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImplTest.java
@@ -88,36 +88,26 @@ public class MimeTypeServiceImplTest extends TestCase {
     }
 
     public void testFileLoading() throws Exception {
-        InputStream ins = this.getClass().getResourceAsStream("/META-INF/mime.types");
-        assertNotNull(ins);
-
-        try {
-            this.service.registerMimeType(ins);
-
-            final String [] exts = { TXT, LOG, APT };
-            for(String ext : exts) {
-                assertEquals("Extension " + ext + " (1)", TEXT_PLAIN, this.service.getMimeType("file." + ext));
-                assertEquals("Extension " + ext + " (2)", TEXT_PLAIN, this.service.getMimeType(ext));
-            }
+        loadMimeTypes(MimeTypeServiceImpl.CORE_MIME_TYPES);
+        loadMimeTypes(MimeTypeServiceImpl.MIME_TYPES);
 
-            assertEquals(TEXT_PLAIN,
-                this.service.getMimeType(("file." + TXT).toUpperCase()));
-            assertEquals(TEXT_PLAIN, this.service.getMimeType((TXT).toUpperCase()));
-            assertEquals(TEXT_PLAIN,
-                this.service.getMimeType(("file." + LOG).toUpperCase()));
-            assertEquals(TEXT_PLAIN, this.service.getMimeType((LOG).toUpperCase()));
+        final String [] exts = { TXT, LOG, APT };
+        for(String ext : exts) {
+            assertEquals("Extension " + ext + " (1)", TEXT_PLAIN, this.service.getMimeType("file." + ext));
+            assertEquals("Extension " + ext + " (2)", TEXT_PLAIN, this.service.getMimeType(ext));
+        }
 
-            assertEquals(IMAGE_GIF, this.service.getMimeType(GIF));
-            assertNull(this.service.getMimeType(UNMAPPED_GIF));
+        assertEquals(TEXT_PLAIN,
+            this.service.getMimeType(("file." + TXT).toUpperCase()));
+        assertEquals(TEXT_PLAIN, this.service.getMimeType((TXT).toUpperCase()));
+        assertEquals(TEXT_PLAIN,
+            this.service.getMimeType(("file." + LOG).toUpperCase()));
+        assertEquals(TEXT_PLAIN, this.service.getMimeType((LOG).toUpperCase()));
 
-            assertEquals(TXT, this.service.getExtension(TEXT_PLAIN));
+        assertEquals(IMAGE_GIF, this.service.getMimeType(GIF));
+        assertNull(this.service.getMimeType(UNMAPPED_GIF));
 
-        } finally {
-            try {
-                ins.close();
-            } catch (IOException ignore) {
-            }
-        }
+        assertEquals(TXT, this.service.getExtension(TEXT_PLAIN));
     }
 
     public void testProvider() throws Exception {
@@ -186,4 +176,19 @@ public class MimeTypeServiceImplTest extends TestCase {
         };
 
     }
+    
+    private void loadMimeTypes(String path) throws IOException {
+        InputStream ins = this.getClass().getResourceAsStream(path);
+        assertNotNull(ins);
+
+        try {
+            this.service.registerMimeType(ins);
+        } finally {
+            try {
+                ins.close();
+            } catch (IOException ignore) {
+            }
+        }
+
+    }
 }

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.