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:41 UTC
[sling-org-apache-sling-commons-mime] annotated tag
org.apache.sling.commons.mime-2.1.0-incubator created (now c954d65)
This is an automated email from the ASF dual-hosted git repository.
rombert pushed a change 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.
at c954d65 (tag)
tagging 01124c3758d0b8a8224ac1cab51556609398303b (commit)
by Felix Meschberger
on Thu Jun 18 09:21:02 2009 +0000
- Log -----------------------------------------------------------------
org.apache.sling.commons.mime-2.1.0-incubator
-----------------------------------------------------------------------
This annotated tag includes the following new commits:
new f334b72 Import initial Sling source
new a45b08f Ignore target dirs
new e497428 Ignore Eclipse and build artifacts
new e3f2fe4 Fix scm settings
new 3c2c864 Correct method references and headers.
new 74bf5b7 Correct method references and headers.
new 6ec8f9f Refactor core classes part three - update other bundles.
new a3b7c65 Refactor core classes part three - update other bundles.
new c0f341e Ignore Eclipse .settings
new b772127 Fix license headers.
new 95bb054 Fix license headers.
new a3fca27 Fix license headers.
new 9302ea0 SLING-83 Move modules according to the new module structure
new bb9e3e1 SLING-83 Fix SVN repository location, project name and java packages
new 53588c5 SLING-83: Fix relative paths to parent poms.
new 6795c86 SLING-83 make artifactId fully qualified
new 9d9ebcb Add version attribute to package exports
new b93993a Use OSGi core and cmpendium jars from Felix project.
new 0462bbc SLING-204 - add svn ignore patterns for intellij
new beb3f70 Add json to mime type list.
new e085690 Keep alphabetical order
new fac9f3b SLING-305 - APT default servlet and related tests
new 8c355dd Move licence and notice to top level dir.
new 2ca51ca add well-known script extensions as text/plain
new 2820949 Add incubator disclaimer.
new e708ebb Write first element in pom in one line (to avoid problems with the maven release plugin) and minor pom fixes.
new 318217b Further updates on notice files.
new 98eee52 Go back to simpler notice file format.
new f1d92a4 Eclude maven-eclipse.xml generated by the maven eclipse plugin.
new 22ad51b SLING-449: Refactor core to engine.
new d5fa86b SLING-479 Fix @scr.tags: - normalize metadata attribute settings to "no" - ensure proper metadata and ds attributes are set - create metatype.properties files where required - fix metatype.properties files
new 28359a2 SLING-483: Add excludes for javadocs (WiP)
new 14aa7e2 SLING-495 - NOTICE files generated using mknotice script
new cf94416 SLING-495 - NOTICE files updated according to changes in revision 662927
new 7ddde4c SLING-495 - NOTICE files regenerated with revision 663097 changes
new 74b1ef3 Use released version of parent pom.
new d420198 [maven-release-plugin] prepare release org.apache.sling.commons.mime-2.0.0-incubator
new 78d13bc [maven-release-plugin] prepare for next development iteration
new 844929a Fix reference to parent pom.
new f28544d SLING-521: Restore more notice files.
new 26b070e SLING-521: Separate between notice files for bin and src dists.
new 0d98d64 SLING-521: Separate between notice files for bin and src dists.
new 50306be SLING-521: Separate between notice files for bin and src dists.
new a9965f8 Change copyright year to 2008.
new 4c36f89 Update to released versions.
new ab1dfab [maven-release-plugin] prepare release org.apache.sling.commons.mime-2.0.2-incubator
new 68b03eb [maven-release-plugin] prepare for next development iteration
new 2adc02a Use latest snapshots again to make project buildable.
new af98ced Use released parent pom where possible.
new f731fa5 Add more mime types
new 1cb4511 SLING-555 : Update all poms to use the latest parent pom; update parent pom to include the incubator repo for plugins and use latest plugins.
new a826553 SLING-720 Use the semi-official text/x-java-source MIME type for .java files
new b58c649 SLING-808 : Increase version to 5-incubator-SNAPSHOT
new da55a74 Update notice files to include 2009 in copyright statement.
new f90cd50 SLING-829 Cosmetics to the bundle/project names
new da68493 SLING-865 : Move to bundles
new ffdb141 SLING-865 : Adjust reactor pom and svn information in each module.
new b662ee3 SLING-865 : Adjust path to parent pom and add profiles for samples and contrib
new ca12f1b Use release parent pom
new c331e77 [maven-release-plugin] prepare release org.apache.sling.commons.mime-2.0.4-incubator
new dce8179 [maven-release-plugin] prepare for next development iteration
new c991ecc Use next dev version of parent pom
new c9655ec SLING-964 Redefine xml as application/xml and add application/rss+xml for rss
new 97878c1 SLING-964 Update MIME type list with list from Apache httpd
new c898690 Set parent pom to released version.
new 5b7dd91 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.
new 7dbdfcd SLING-965 add web console plugin to display known mime type mappings
new 384bf2a SLING-965 Add support to add MIME type mappings by configuration
new 9a50d4d Fix typo in HTML code
new ea66d51 SLING-974 Add a note about not editing the core_mime.types file
new 73d9711 JavaDoc
new 449d81f Add Bundle-DocURL
new ee48a5a Code reorder and make an internal method private (was public)
new a1c2b52 Fix license header ....
new 45725da Cleanup and reorder paragraphs
new f8e655c SLING-976 Declare Servlet and Web Console API imports optional
new 7d2e277 [maven-release-plugin] prepare release org.apache.sling.commons.mime-2.1.0-incubator
new d1dfaf6 [maven-release-plugin] copy for tag org.apache.sling.commons.mime-2.1.0-incubator
new 4e69629 Move Sling to new TLP location
new 01124c3 Move Sling to new TLP location
The 80 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
--
To stop receiving notification emails like this one, please contact
['"commits@sling.apache.org" <co...@sling.apache.org>'].
[sling-org-apache-sling-commons-mime] 12/22: SLING-974 Add a note
about not editing the core_mime.types file
Posted by ro...@apache.org.
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 ea66d5151721ea85d2f9c46890e5bc56ca64778f
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 07:01:12 2009 +0000
SLING-974 Add a note about not editing the core_mime.types file
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775843 13f79535-47bb-0310-9956-ffa450edef68
---
src/main/resources/META-INF/core_mime.types | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/main/resources/META-INF/core_mime.types b/src/main/resources/META-INF/core_mime.types
index eb2e21c..a5eba4e 100644
--- a/src/main/resources/META-INF/core_mime.types
+++ b/src/main/resources/META-INF/core_mime.types
@@ -23,6 +23,13 @@
# http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types
# Rev. 774215
#
+#
+# NOTE: Please do not edit this file other than syncing its content
+# with the mime.types file from the Apache httpd project.
+# To add SLING specific default mappings rather ammend the
+# mime.types file.
+#
+#
# See SLING-964 for more information
#
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 07/22: Set parent pom to
released version.
Posted by ro...@apache.org.
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 c898690203c80f39a96eee727e047eae1ac21362
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Thu May 14 14:49:51 2009 +0000
Set parent pom to released version.
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@774798 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index eb6efb0..f32126c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.sling</groupId>
<artifactId>sling</artifactId>
- <version>6-incubator-SNAPSHOT</version>
+ <version>5-incubator</version>
<relativePath>../../../parent/pom.xml</relativePath>
</parent>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 03/22: [maven-release-plugin]
prepare for next development iteration
Posted by ro...@apache.org.
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 dce8179ae08f4707f387dd255d83669476c88b76
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue May 5 15:14:25 2009 +0000
[maven-release-plugin] prepare for next development iteration
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@771783 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/pom.xml b/pom.xml
index 4874d68..f32126c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
<artifactId>org.apache.sling.commons.mime</artifactId>
<packaging>bundle</packaging>
- <version>2.0.4-incubator</version>
+ <version>2.0.5-incubator-SNAPSHOT</version>
<name>Apache Sling MIME type mapping support</name>
<description>
@@ -37,9 +37,9 @@
</description>
<scm>
- <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.0.4-incubator</connection>
- <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.0.4-incubator</developerConnection>
- <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.mime-2.0.4-incubator</url>
+ <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime</connection>
+ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime</developerConnection>
+ <url>http://svn.apache.org/viewvc/incubator/sling/trunk/bundles/commons/mime</url>
</scm>
<build>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 19/22: [maven-release-plugin]
prepare release org.apache.sling.commons.mime-2.1.0-incubator
Posted by ro...@apache.org.
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 7d2e2776ecf66da1b9d3299292b73fffb130b4c2
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 09:31:52 2009 +0000
[maven-release-plugin] prepare release org.apache.sling.commons.mime-2.1.0-incubator
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775873 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/pom.xml b/pom.xml
index 61bb1fb..1b9086f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
<artifactId>org.apache.sling.commons.mime</artifactId>
<packaging>bundle</packaging>
- <version>2.0.5-incubator-SNAPSHOT</version>
+ <version>2.1.0-incubator</version>
<name>Apache Sling MIME type mapping support</name>
<description>
@@ -37,9 +37,9 @@
</description>
<scm>
- <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime</connection>
- <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime</developerConnection>
- <url>http://svn.apache.org/viewvc/incubator/sling/trunk/bundles/commons/mime</url>
+ <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator</connection>
+ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator</developerConnection>
+ <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator</url>
</scm>
<build>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 15/22: Code reorder and make
an internal method private (was public)
Posted by ro...@apache.org.
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 ee48a5ae855726d8fcc9e3ccaf48404558c90364
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 07:49:44 2009 +0000
Code reorder and make an internal method private (was public)
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775849 13f79535-47bb-0310-9956-ffa450edef68
---
.../commons/mime/internal/MimeTypeServiceImpl.java | 145 +++++++++++----------
1 file changed, 75 insertions(+), 70 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 2d45685..fdef83a 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
@@ -47,7 +47,8 @@ import org.osgi.service.log.LogService;
* @scr.component immediate="false" label="%mime.service.name"
* description="%mime.service.description"
* @scr.property name="service.vendor" value="The Apache Software Foundation"
- * @scr.property name="service.description" value="Apache Sling MIME Type Service"
+ * @scr.property name="service.description"
+ * value="Apache Sling MIME Type Service"
* @scr.service interface="org.apache.sling.commons.mime.MimeTypeService"
* @scr.reference name="MimeTypeProvider"
* interface="org.apache.sling.commons.mime.MimeTypeProvider"
@@ -61,7 +62,7 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
/** @scr.property cardinality="-2147483647" type="String" */
private static final String PROP_MIME_TYPES = "mime.types";
-
+
/** @scr.reference cardinality="0..1" policy="dynamic" */
private LogService logService;
@@ -77,9 +78,8 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
private ServiceRegistration webConsolePluginService;
- /**
- * @see org.apache.sling.commons.mime.MimeTypeService#getMimeType(java.lang.String)
- */
+ // --------- MimeTypeService interface
+
public String getMimeType(String name) {
if (name == null) {
return null;
@@ -99,9 +99,6 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
return type;
}
- /**
- * @see org.apache.sling.commons.mime.MimeTypeService#getExtension(java.lang.String)
- */
public String getExtension(String mimeType) {
if (mimeType == null) {
return null;
@@ -120,15 +117,6 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
return ext;
}
- public void registerMimeType(String line) {
- String[] parts = line.split("\\s+");
- if (parts.length > 1) {
- String[] extensions = new String[parts.length - 1];
- System.arraycopy(parts, 1, extensions, 0, extensions.length);
- this.registerMimeType(parts[0], extensions);
- }
- }
-
public void registerMimeType(String mimeType, String... extensions) {
if (mimeType == null || mimeType.length() == 0 || extensions == null
|| extensions.length == 0) {
@@ -188,58 +176,6 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
}
}
- // ---------- internal -----------------------------------------------------
-
- private MimeTypeProvider[] getMimeTypeProviders() {
- MimeTypeProvider[] list = this.typeProviders;
-
- if (list == null) {
- synchronized (this.typeProviderList) {
- this.typeProviders = this.typeProviderList.toArray(new MimeTypeProvider[this.typeProviderList.size()]);
- list = this.typeProviders;
- }
- }
-
- return list;
- }
-
- private void registerMimeType(URL mimetypes) {
- if (mimetypes != null) {
- InputStream ins = null;
- try {
- ins = mimetypes.openStream();
- this.registerMimeType(ins);
- } catch (IOException ioe) {
- // log but don't actually care
- this.log(LogService.LOG_WARNING, "An error occurred reading "
- + mimetypes, ioe);
- } finally {
- if (ins != null) {
- try {
- ins.close();
- } catch (IOException ioe) {
- // ignore
- }
- }
- }
- }
- }
-
- private void log(int level, String message, Throwable t) {
- LogService log = this.logService;
- if (log != null) {
- log.log(level, message, t);
- } else {
- PrintStream out = (level == LogService.LOG_ERROR)
- ? System.err
- : System.out;
- out.println(message);
- if (t != null) {
- t.printStackTrace(out);
- }
- }
- }
-
// ---------- SCR implementation -------------------------------------------
protected void activate(ComponentContext context) {
@@ -268,7 +204,7 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
registerMimeType(configType);
}
}
-
+
try {
MimeTypeWebConsolePlugin plugin = new MimeTypeWebConsolePlugin(this);
plugin.activate(context.getBundleContext());
@@ -330,4 +266,73 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
Map<String, String> getExtensionMap() {
return extensionMap;
}
+
+ // ---------- internal -----------------------------------------------------
+
+ private MimeTypeProvider[] getMimeTypeProviders() {
+ MimeTypeProvider[] list = this.typeProviders;
+
+ if (list == null) {
+ synchronized (this.typeProviderList) {
+ this.typeProviders = this.typeProviderList.toArray(new MimeTypeProvider[this.typeProviderList.size()]);
+ list = this.typeProviders;
+ }
+ }
+
+ return list;
+ }
+
+ private void registerMimeType(URL mimetypes) {
+ if (mimetypes != null) {
+ InputStream ins = null;
+ try {
+ ins = mimetypes.openStream();
+ this.registerMimeType(ins);
+ } catch (IOException ioe) {
+ // log but don't actually care
+ this.log(LogService.LOG_WARNING, "An error occurred reading "
+ + mimetypes, ioe);
+ } finally {
+ if (ins != null) {
+ try {
+ ins.close();
+ } catch (IOException ioe) {
+ // ignore
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Splits the <code>line</code> on whitespace an registers the MIME type
+ * mappings provided the line contains more than one whitespace separated
+ * fields.
+ *
+ * @throws NullPointerException if <code>line</code> is <code>null</code>.
+ */
+ private void registerMimeType(String line) {
+ String[] parts = line.split("\\s+");
+ if (parts.length > 1) {
+ String[] extensions = new String[parts.length - 1];
+ System.arraycopy(parts, 1, extensions, 0, extensions.length);
+ this.registerMimeType(parts[0], extensions);
+ }
+ }
+
+ private void log(int level, String message, Throwable t) {
+ LogService log = this.logService;
+ if (log != null) {
+ log.log(level, message, t);
+ } else {
+ PrintStream out = (level == LogService.LOG_ERROR)
+ ? System.err
+ : System.out;
+ out.println(message);
+ if (t != null) {
+ t.printStackTrace(out);
+ }
+ }
+ }
+
}
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 13/22: JavaDoc
Posted by ro...@apache.org.
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 73d9711394d4544748aabd5dd9a6877b03425cbc
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 07:35:49 2009 +0000
JavaDoc
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775847 13f79535-47bb-0310-9956-ffa450edef68
---
.../java/org/apache/sling/commons/mime/MimeTypeProvider.java | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/sling/commons/mime/MimeTypeProvider.java b/src/main/java/org/apache/sling/commons/mime/MimeTypeProvider.java
index d5c728c..97de2ba 100644
--- a/src/main/java/org/apache/sling/commons/mime/MimeTypeProvider.java
+++ b/src/main/java/org/apache/sling/commons/mime/MimeTypeProvider.java
@@ -17,7 +17,14 @@
package org.apache.sling.commons.mime;
/**
- * The <code>MimeTypeProvider</code> TODO
+ * The <code>MimeTypeProvider</code> interface defines an API for services
+ * which are asked for MIME type mappings for unknown MIME types or extensions.
+ * <p>
+ * It is important to understand, that services registered with this interface
+ * are only called as a last resort and that the first service asked and
+ * replying with a non-<code>null</code> answer wins. Specifically if a MIME
+ * type mapping is configured by default or as an extension to the MIME type
+ * service, MimeTypeProvider services are not queried.
* <p>
* This interface may be implemented by bundles wishing to provide control over
* how extensions are mapped to MIME types and vice-versa.
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 18/22: SLING-976 Declare
Servlet and Web Console API imports optional
Posted by ro...@apache.org.
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 f8e655cfe220a59eaff9aab9b4b705031cb7f321
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 08:15:31 2009 +0000
SLING-976 Declare Servlet and Web Console API imports optional
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775854 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/pom.xml b/pom.xml
index 4fba6ca..61bb1fb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -63,6 +63,11 @@
<Private-Package>
org.apache.sling.commons.mime.internal
</Private-Package>
+ <Import-Package>
+ javax.servlet.*;
+ org.apache.felix.webconsole;resolution:=optional,
+ *
+ </Import-Package>
</instructions>
</configuration>
</plugin>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 10/22: SLING-965 Add support
to add MIME type mappings by configuration
Posted by ro...@apache.org.
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 384bf2a7af68b2e8c0192758afd5d4708488a338
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Sun May 17 20:11:24 2009 +0000
SLING-965 Add support to add MIME type mappings by configuration
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775748 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 5 +++
.../commons/mime/internal/MimeTypeServiceImpl.java | 36 ++++++++++++++++------
.../OSGI-INF/metatype/metatype.properties | 36 ++++++++++++++++++++++
3 files changed, 68 insertions(+), 9 deletions(-)
diff --git a/pom.xml b/pom.xml
index b8591c8..8c76cdc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -80,6 +80,11 @@
</reporting>
<dependencies>
<dependency>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>org.apache.sling.commons.osgi</artifactId>
+ <version>2.0.2-incubator</version>
+ </dependency>
+ <dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
</dependency>
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 47e7947..2d45685 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
@@ -32,6 +32,7 @@ import java.util.Map;
import org.apache.felix.webconsole.WebConsoleConstants;
import org.apache.sling.commons.mime.MimeTypeProvider;
import org.apache.sling.commons.mime.MimeTypeService;
+import org.apache.sling.commons.osgi.OsgiUtil;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleEvent;
import org.osgi.framework.BundleListener;
@@ -43,13 +44,14 @@ import org.osgi.service.log.LogService;
* The <code>MimeTypeServiceImpl</code> is the official implementation of the
* {@link MimeTypeService} interface.
*
- * @scr.component immediate="false" metatype="no"
+ * @scr.component immediate="false" label="%mime.service.name"
+ * description="%mime.service.description"
* @scr.property name="service.vendor" value="The Apache Software Foundation"
- * @scr.property name="service.description" value="Sling Servlet"
+ * @scr.property name="service.description" value="Apache Sling MIME Type Service"
+ * @scr.service interface="org.apache.sling.commons.mime.MimeTypeService"
* @scr.reference name="MimeTypeProvider"
* interface="org.apache.sling.commons.mime.MimeTypeProvider"
* cardinality="0..n" policy="dynamic"
- * @scr.service interface="org.apache.sling.commons.mime.MimeTypeService"
*/
public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
@@ -57,6 +59,9 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
public static final String MIME_TYPES = "/META-INF/mime.types";
+ /** @scr.property cardinality="-2147483647" type="String" */
+ private static final String PROP_MIME_TYPES = "mime.types";
+
/** @scr.reference cardinality="0..1" policy="dynamic" */
private LogService logService;
@@ -115,6 +120,15 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
return ext;
}
+ public void registerMimeType(String line) {
+ String[] parts = line.split("\\s+");
+ if (parts.length > 1) {
+ String[] extensions = new String[parts.length - 1];
+ System.arraycopy(parts, 1, extensions, 0, extensions.length);
+ this.registerMimeType(parts[0], extensions);
+ }
+ }
+
public void registerMimeType(String mimeType, String... extensions) {
if (mimeType == null || mimeType.length() == 0 || extensions == null
|| extensions.length == 0) {
@@ -170,12 +184,7 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
continue;
}
- String[] parts = line.split("\\s+");
- if (parts.length > 1) {
- String[] extensions = new String[parts.length - 1];
- System.arraycopy(parts, 1, extensions, 0, extensions.length);
- this.registerMimeType(parts[0], extensions);
- }
+ registerMimeType(line);
}
}
@@ -251,6 +260,15 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
}
}
+ // register configuration properties
+ String[] configTypes = OsgiUtil.toStringArray(context.getProperties().get(
+ PROP_MIME_TYPES));
+ if (configTypes != null) {
+ for (String configType : configTypes) {
+ registerMimeType(configType);
+ }
+ }
+
try {
MimeTypeWebConsolePlugin plugin = new MimeTypeWebConsolePlugin(this);
plugin.activate(context.getBundleContext());
diff --git a/src/main/resources/OSGI-INF/metatype/metatype.properties b/src/main/resources/OSGI-INF/metatype/metatype.properties
new file mode 100644
index 0000000..b8a8461
--- /dev/null
+++ b/src/main/resources/OSGI-INF/metatype/metatype.properties
@@ -0,0 +1,36 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+
+#
+# This file contains localization strings for configuration labels and
+# descriptions as used in the metatype.xml descriptor generated by the
+# the Felix SCR plugin
+
+mime.service.name = Apache Sling MIME Type Service
+mime.service.description = The Sling MIME Type Service provides support for \
+ maintaining and configuring MIME Type mappings.
+mime.types.name = MIME Types
+mime.types.description = Configures additional MIME type mappings in the \
+ traditional mime.types file format: Each property is a blank space separated \
+ list of strings where the first string is the MIME type and the rest of the \
+ strings are filename extensions referring to the MIME type. Using this \
+ property additional MIME type mappings may be defined. Existing MIME type \
+ mappings cannot be redefined and setting such mappings in this property \
+ has no effect. For a list of existing mappings refer to the MIME Types page.
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 22/22: Move Sling to new TLP
location
Posted by ro...@apache.org.
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 01124c3758d0b8a8224ac1cab51556609398303b
Merge: 4e69629 d1dfaf6
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Thu Jun 18 09:21:02 2009 +0000
Move Sling to new TLP location
git-svn-id: https://svn.apache.org/repos/asf/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator@785979 13f79535-47bb-0310-9956-ffa450edef68
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[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.
Posted by ro...@apache.org.
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>.
[sling-org-apache-sling-commons-mime] 14/22: Add Bundle-DocURL
Posted by ro...@apache.org.
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 449d81f3f5f3ee58427df2af459ac12df83c59e2
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 07:40:23 2009 +0000
Add Bundle-DocURL
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775848 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/pom.xml b/pom.xml
index 8c76cdc..4fba6ca 100644
--- a/pom.xml
+++ b/pom.xml
@@ -54,6 +54,9 @@
<extensions>true</extensions>
<configuration>
<instructions>
+ <Bundle-DocURL>
+ http://incubator.apache.org/sling/site/mime-type-support.html
+ </Bundle-DocURL>
<Export-Package>
org.apache.sling.commons.mime;version=${pom.version}
</Export-Package>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 17/22: Cleanup and reorder
paragraphs
Posted by ro...@apache.org.
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 45725dab641c97082d42a6626c138e4f00139b3d
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 07:55:09 2009 +0000
Cleanup and reorder paragraphs
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775851 13f79535-47bb-0310-9956-ffa450edef68
---
NOTICE | 13 +++++++------
src/main/resources/META-INF/NOTICE | 13 +++++++------
2 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/NOTICE b/NOTICE
index 97c463f..9837e87 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,12 +1,13 @@
-Apache Sling Mime Library
+Apache Sling MIME type mapping support
Copyright 2008-2009 The Apache Software Foundation
-Apache Sling is based on source code originally developed
-by Day Software (http://www.day.com/).
-
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
This product includes software developed by
-Copyright (c) 2009 Ludo van den Boom (http://blog.cubicphuse.nl/)
-Licensed under the MIT License
\ No newline at end of file
+Ludo van den Boom (http://blog.cubicphuse.nl/)
+Copyright (c) 2009 Ludo van den Boom
+Licensed under the MIT License
+
+Apache Sling is based on source code originally developed
+by Day Software (http://www.day.com/).
\ No newline at end of file
diff --git a/src/main/resources/META-INF/NOTICE b/src/main/resources/META-INF/NOTICE
index 97c463f..9837e87 100644
--- a/src/main/resources/META-INF/NOTICE
+++ b/src/main/resources/META-INF/NOTICE
@@ -1,12 +1,13 @@
-Apache Sling Mime Library
+Apache Sling MIME type mapping support
Copyright 2008-2009 The Apache Software Foundation
-Apache Sling is based on source code originally developed
-by Day Software (http://www.day.com/).
-
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
This product includes software developed by
-Copyright (c) 2009 Ludo van den Boom (http://blog.cubicphuse.nl/)
-Licensed under the MIT License
\ No newline at end of file
+Ludo van den Boom (http://blog.cubicphuse.nl/)
+Copyright (c) 2009 Ludo van den Boom
+Licensed under the MIT License
+
+Apache Sling is based on source code originally developed
+by Day Software (http://www.day.com/).
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 02/22: [maven-release-plugin]
prepare release org.apache.sling.commons.mime-2.0.4-incubator
Posted by ro...@apache.org.
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 c331e7787c19822a4368af9e1f784c202065baca
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue May 5 15:14:11 2009 +0000
[maven-release-plugin] prepare release org.apache.sling.commons.mime-2.0.4-incubator
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@771781 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/pom.xml b/pom.xml
index 13448cd..4874d68 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
<artifactId>org.apache.sling.commons.mime</artifactId>
<packaging>bundle</packaging>
- <version>2.0.3-incubator-SNAPSHOT</version>
+ <version>2.0.4-incubator</version>
<name>Apache Sling MIME type mapping support</name>
<description>
@@ -37,9 +37,9 @@
</description>
<scm>
- <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime</connection>
- <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime</developerConnection>
- <url>http://svn.apache.org/viewvc/incubator/sling/trunk/bundles/commons/mime</url>
+ <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.0.4-incubator</connection>
+ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.0.4-incubator</developerConnection>
+ <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.mime-2.0.4-incubator</url>
</scm>
<build>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 20/22: [maven-release-plugin]
copy for tag org.apache.sling.commons.mime-2.1.0-incubator
Posted by ro...@apache.org.
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 d1dfaf6e8b211e51fc5bf04d2c2e29c9f2ab09ab
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 09:38:44 2009 +0000
[maven-release-plugin] copy for tag org.apache.sling.commons.mime-2.1.0-incubator
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator@775876 13f79535-47bb-0310-9956-ffa450edef68
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 01/22: Use release parent pom
Posted by ro...@apache.org.
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 ca12f1b601840b55dac395e1947fdbbfb8857bb3
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue May 5 15:06:21 2009 +0000
Use release parent pom
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@771764 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index a9b2081..13448cd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.sling</groupId>
<artifactId>sling</artifactId>
- <version>5-incubator-SNAPSHOT</version>
+ <version>5-incubator</version>
<relativePath>../../../parent/pom.xml</relativePath>
</parent>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 21/22: Move Sling to new TLP
location
Posted by ro...@apache.org.
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 4e6962940913cbc227e7a06a990b4d14f6725144
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Thu Jun 18 09:21:02 2009 +0000
Move Sling to new TLP location
git-svn-id: https://svn.eu.apache.org/repos/asf/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator@785979 13f79535-47bb-0310-9956-ffa450edef68
---
LICENSE | 234 ++++
NOTICE | 13 +
README.txt | 36 +
pom.xml | 117 ++
.../sling/commons/mime/MimeTypeProvider.java | 69 ++
.../apache/sling/commons/mime/MimeTypeService.java | 68 ++
.../commons/mime/internal/MimeTypeServiceImpl.java | 338 ++++++
.../mime/internal/MimeTypeWebConsolePlugin.java | 200 +++
src/main/resources/META-INF/DISCLAIMER | 7 +
src/main/resources/META-INF/LICENSE | 234 ++++
src/main/resources/META-INF/NOTICE | 13 +
src/main/resources/META-INF/core_mime.types | 1267 ++++++++++++++++++++
src/main/resources/META-INF/mime.types | 31 +
.../OSGI-INF/metatype/metatype.properties | 36 +
src/main/resources/res/jquery.treeTable.css | 43 +
src/main/resources/res/jquery.treeTable.min.js | 10 +
.../mime/internal/MimeTypeServiceImplTest.java | 194 +++
17 files changed, 2910 insertions(+)
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..ef13dba
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,234 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+
+APACHE SLING SUBCOMPONENTS:
+
+Apache Sling includes subcomponents with separate copyright notices and
+license terms. Your use of these subcomponents is subject to the terms
+and conditions of the following licenses.
+
+JQuery TreeTable plugin
+
+ Copyright (c) 2009 Ludo van den Boom
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000..9837e87
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,13 @@
+Apache Sling MIME type mapping support
+Copyright 2008-2009 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+This product includes software developed by
+Ludo van den Boom (http://blog.cubicphuse.nl/)
+Copyright (c) 2009 Ludo van den Boom
+Licensed under the MIT License
+
+Apache Sling is based on source code originally developed
+by Day Software (http://www.day.com/).
\ No newline at end of file
diff --git a/README.txt b/README.txt
new file mode 100644
index 0000000..70d25e3
--- /dev/null
+++ b/README.txt
@@ -0,0 +1,36 @@
+Apache Sling Mime Library
+
+Support for configurable MIME type mapping and querying.
+
+Disclaimer
+==========
+Apache Sling is an effort undergoing incubation at The Apache Software Foundation (ASF),
+sponsored by the Apache Jackrabbit PMC. Incubation is required of all newly accepted
+projects until a further review indicates that the infrastructure, communications,
+and decision making process have stabilized in a manner consistent with other
+successful ASF projects. While incubation status is not necessarily a reflection of
+the completeness or stability of the code, it does indicate that the project has yet
+to be fully endorsed by the ASF.
+
+Getting Started
+===============
+
+This component uses a Maven 2 (http://maven.apache.org/) build
+environment. It requires a Java 5 JDK (or higher) and Maven (http://maven.apache.org/)
+2.0.7 or later. We recommend to use the latest Maven version.
+
+If you have Maven 2 installed, you can compile and
+package the jar using the following command:
+
+ mvn package
+
+See the Maven 2 documentation for other build features.
+
+The latest source code for this component is available in the
+Subversion (http://subversion.tigris.org/) source repository of
+the Apache Software Foundation. If you have Subversion installed,
+you can checkout the latest source using the following command:
+
+ svn checkout http://svn.apache.org/repos/asf/incubator/sling/trunk/commons/mime
+
+See the Subversion documentation for other source control features.
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..1b9086f
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>sling</artifactId>
+ <version>5-incubator</version>
+ <relativePath>../../../parent/pom.xml</relativePath>
+ </parent>
+
+ <artifactId>org.apache.sling.commons.mime</artifactId>
+ <packaging>bundle</packaging>
+ <version>2.1.0-incubator</version>
+
+ <name>Apache Sling MIME type mapping support</name>
+ <description>
+ Support for configurable MIME type mapping and querying
+ </description>
+
+ <scm>
+ <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator</connection>
+ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator</developerConnection>
+ <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.mime-2.1.0-incubator</url>
+ </scm>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-scr-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Bundle-DocURL>
+ http://incubator.apache.org/sling/site/mime-type-support.html
+ </Bundle-DocURL>
+ <Export-Package>
+ org.apache.sling.commons.mime;version=${pom.version}
+ </Export-Package>
+ <Private-Package>
+ org.apache.sling.commons.mime.internal
+ </Private-Package>
+ <Import-Package>
+ javax.servlet.*;
+ org.apache.felix.webconsole;resolution:=optional,
+ *
+ </Import-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <excludePackageNames>
+ org.apache.sling.commons.mime.internal
+ </excludePackageNames>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>org.apache.sling.commons.osgi</artifactId>
+ <version>2.0.2-incubator</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.webconsole</artifactId>
+ <version>1.2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/src/main/java/org/apache/sling/commons/mime/MimeTypeProvider.java b/src/main/java/org/apache/sling/commons/mime/MimeTypeProvider.java
new file mode 100644
index 0000000..97de2ba
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/mime/MimeTypeProvider.java
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sling.commons.mime;
+
+/**
+ * The <code>MimeTypeProvider</code> interface defines an API for services
+ * which are asked for MIME type mappings for unknown MIME types or extensions.
+ * <p>
+ * It is important to understand, that services registered with this interface
+ * are only called as a last resort and that the first service asked and
+ * replying with a non-<code>null</code> answer wins. Specifically if a MIME
+ * type mapping is configured by default or as an extension to the MIME type
+ * service, MimeTypeProvider services are not queried.
+ * <p>
+ * This interface may be implemented by bundles wishing to provide control over
+ * how extensions are mapped to MIME types and vice-versa.
+ */
+public interface MimeTypeProvider {
+
+ /**
+ * Returns the MIME type of the extension of the given <code>name</code>.
+ * The extension is the part of the name after the last dot. If the name
+ * does not contain a dot, the name as a whole is assumed to be the
+ * extension.
+ *
+ * @param name The name for which the MIME type is to be returned.
+ * @return The MIME type for the extension of the name. If the extension
+ * cannot be mapped to a MIME type or <code>name</code> is
+ * <code>null</code>, <code>null</code> is returned.
+ * @see #getExtension(String)
+ */
+ String getMimeType(String name);
+
+ /**
+ * Returns the primary name extension to which the given
+ * <code>mimeType</code> maps. The returned extension must map to the
+ * given <code>mimeType</code> when fed to the
+ * {@link #getMimeType(String)} method. In other words, the expression
+ * <code>mimeType.equals(getMimeType(getExtension(mimeType)))</code> must
+ * always be <code>true</code> for any non-<code>null</code> MIME type.
+ * <p>
+ * A MIME type may be mapped to multiple extensions (e.g.
+ * <code>text/plain</code> to <code>txt</code>, <code>log</code>,
+ * ...). This method is expected to returned one of those extensions. It is
+ * up to the implementation to select an appropriate extension if multiple
+ * mappings exist for a single MIME type.
+ *
+ * @param mimeType The MIME type whose primary extension is requested.
+ * @return A extension which maps to the given MIME type or
+ * <code>null</code> if no such mapping exists.
+ * @see #getMimeType(String)
+ */
+ String getExtension(String mimeType);
+
+}
diff --git a/src/main/java/org/apache/sling/commons/mime/MimeTypeService.java b/src/main/java/org/apache/sling/commons/mime/MimeTypeService.java
new file mode 100644
index 0000000..1d17c53
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/mime/MimeTypeService.java
@@ -0,0 +1,68 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sling.commons.mime;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * The <code>MimeTypeService</code> TODO
+ * <p>
+ * This interface is not intended to be implemented by bundles. It is
+ * implemented by this bundle and may be used by client bundles.
+ */
+public interface MimeTypeService {
+
+ /**
+ * Returns the MIME type of the extension of the given <code>name</code>.
+ * The extension is the part of the name after the last dot. If the name
+ * does not contain a dot, the name as a whole is assumed to be the
+ * extension.
+ *
+ * @param name The name for which the MIME type is to be returned.
+ * @return The MIME type for the extension of the name. If the extension
+ * cannot be mapped to a MIME type or <code>name</code> is
+ * <code>null</code>, <code>null</code> is returned.
+ * @see #getExtension(String)
+ */
+ String getMimeType(String name);
+
+ /**
+ * Returns the primary name extension to which the given
+ * <code>mimeType</code> maps. The returned extension must map to the
+ * given <code>mimeType</code> when fed to the
+ * {@link #getMimeType(String)} method. In other words, the expression
+ * <code>mimeType.equals(getMimeType(getExtension(mimeType)))</code> must
+ * always be <code>true</code> for any non-<code>null</code> MIME type.
+ * <p>
+ * A MIME type may be mapped to multiple extensions (e.g.
+ * <code>text/plain</code> to <code>txt</code>, <code>log</code>,
+ * ...). This method is expected to returned one of those extensions. It is
+ * up to the implementation to select an appropriate extension if multiple
+ * mappings exist for a single MIME type.
+ *
+ * @param mimeType The MIME type whose primary extension is requested.
+ * @return A extension which maps to the given MIME type or
+ * <code>null</code> if no such mapping exists.
+ * @see #getMimeType(String)
+ */
+ String getExtension(String mimeType);
+
+ void registerMimeType(String mimeType, String... extensions);
+
+ void registerMimeType(InputStream mimeTabStream) throws IOException;
+}
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
new file mode 100644
index 0000000..fdef83a
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImpl.java
@@ -0,0 +1,338 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sling.commons.mime.internal;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.PrintStream;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Dictionary;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.felix.webconsole.WebConsoleConstants;
+import org.apache.sling.commons.mime.MimeTypeProvider;
+import org.apache.sling.commons.mime.MimeTypeService;
+import org.apache.sling.commons.osgi.OsgiUtil;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleEvent;
+import org.osgi.framework.BundleListener;
+import org.osgi.framework.ServiceRegistration;
+import org.osgi.service.component.ComponentContext;
+import org.osgi.service.log.LogService;
+
+/**
+ * The <code>MimeTypeServiceImpl</code> is the official implementation of the
+ * {@link MimeTypeService} interface.
+ *
+ * @scr.component immediate="false" label="%mime.service.name"
+ * description="%mime.service.description"
+ * @scr.property name="service.vendor" value="The Apache Software Foundation"
+ * @scr.property name="service.description"
+ * value="Apache Sling MIME Type Service"
+ * @scr.service interface="org.apache.sling.commons.mime.MimeTypeService"
+ * @scr.reference name="MimeTypeProvider"
+ * interface="org.apache.sling.commons.mime.MimeTypeProvider"
+ * cardinality="0..n" policy="dynamic"
+ */
+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.property cardinality="-2147483647" type="String" */
+ private static final String PROP_MIME_TYPES = "mime.types";
+
+ /** @scr.reference cardinality="0..1" policy="dynamic" */
+ private LogService logService;
+
+ private Map<String, String> mimeTab = new HashMap<String, String>();
+
+ private Map<String, String> extensionMap = new HashMap<String, String>();
+
+ private MimeTypeProvider[] typeProviders;
+
+ private List<MimeTypeProvider> typeProviderList = new ArrayList<MimeTypeProvider>();
+
+ private MimeTypeWebConsolePlugin webConsolePlugin;
+
+ private ServiceRegistration webConsolePluginService;
+
+ // --------- MimeTypeService interface
+
+ public String getMimeType(String name) {
+ if (name == null) {
+ return null;
+ }
+
+ String ext = name.substring(name.lastIndexOf('.') + 1);
+ ext = ext.toLowerCase();
+
+ String type = this.mimeTab.get(ext);
+ if (type == null) {
+ MimeTypeProvider[] mtp = this.getMimeTypeProviders();
+ for (int i = 0; type == null && i < mtp.length; i++) {
+ type = mtp[i].getMimeType(ext);
+ }
+ }
+
+ return type;
+ }
+
+ public String getExtension(String mimeType) {
+ if (mimeType == null) {
+ return null;
+ }
+
+ // compare using lowercase only
+ mimeType = mimeType.toLowerCase();
+
+ String ext = this.extensionMap.get(mimeType);
+ if (ext == null) {
+ MimeTypeProvider[] mtp = this.getMimeTypeProviders();
+ for (int i = 0; ext == null && i < mtp.length; i++) {
+ ext = mtp[i].getExtension(mimeType);
+ }
+ }
+ return ext;
+ }
+
+ public void registerMimeType(String mimeType, String... extensions) {
+ if (mimeType == null || mimeType.length() == 0 || extensions == null
+ || extensions.length == 0) {
+ return;
+ }
+
+ mimeType = mimeType.toLowerCase();
+
+ String defaultExtension = extensionMap.get(mimeType);
+
+ for (String extension : extensions) {
+ if (extension != null && extension.length() > 0) {
+ extension = extension.toLowerCase();
+
+ 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) {
+ this.extensionMap.put(mimeType, defaultExtension);
+ }
+ }
+
+ public void registerMimeType(InputStream mimeTabStream) throws IOException {
+ BufferedReader br = new BufferedReader(new InputStreamReader(
+ mimeTabStream, "ISO-8859-1"));
+
+ String line;
+ while ((line = br.readLine()) != null) {
+
+ // ignore comment lines
+ if (line.startsWith("#")) {
+ continue;
+ }
+
+ registerMimeType(line);
+ }
+ }
+
+ // ---------- SCR implementation -------------------------------------------
+
+ 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
+ && bundles[i].getBundleId() != bundle.getBundleId()) {
+ this.registerMimeType(bundles[i].getEntry(MIME_TYPES));
+ }
+ }
+
+ // register configuration properties
+ String[] configTypes = OsgiUtil.toStringArray(context.getProperties().get(
+ PROP_MIME_TYPES));
+ if (configTypes != null) {
+ for (String configType : configTypes) {
+ registerMimeType(configType);
+ }
+ }
+
+ try {
+ MimeTypeWebConsolePlugin plugin = new MimeTypeWebConsolePlugin(this);
+ plugin.activate(context.getBundleContext());
+
+ Dictionary<String, String> props = new Hashtable<String, String>();
+ props.put(WebConsoleConstants.PLUGIN_LABEL, plugin.getLabel());
+
+ webConsolePluginService = context.getBundleContext().registerService(
+ WebConsoleConstants.SERVICE_NAME, plugin, props);
+ webConsolePlugin = plugin;
+ } catch (Throwable t) {
+ // don't care, we thus don't have the console plugin
+ }
+ }
+
+ protected void deactivate(ComponentContext context) {
+ context.getBundleContext().removeBundleListener(this);
+
+ if (webConsolePluginService != null) {
+ webConsolePluginService.unregister();
+ webConsolePluginService = null;
+
+ }
+
+ if (webConsolePlugin != null) {
+ webConsolePlugin.deactivate();
+ webConsolePlugin = null;
+ }
+ }
+
+ protected void bindMimeTypeProvider(MimeTypeProvider mimeTypeProvider) {
+ synchronized (this.typeProviderList) {
+ this.typeProviderList.add(mimeTypeProvider);
+ this.typeProviders = null;
+ }
+ }
+
+ protected void unbindMimeTypeProvider(MimeTypeProvider mimeTypeProvider) {
+ synchronized (this.typeProviderList) {
+ this.typeProviderList.remove(mimeTypeProvider);
+ this.typeProviders = null;
+ }
+ }
+
+ // ---------- BundleListener ----------------------------------------------
+
+ public void bundleChanged(BundleEvent event) {
+ if (event.getType() == BundleEvent.RESOLVED) {
+ this.registerMimeType(event.getBundle().getEntry(MIME_TYPES));
+ }
+ }
+
+ // ---------- plugin support -----------------------------------------------
+
+ Map<String, String> getMimeMap() {
+ return mimeTab;
+ }
+
+ Map<String, String> getExtensionMap() {
+ return extensionMap;
+ }
+
+ // ---------- internal -----------------------------------------------------
+
+ private MimeTypeProvider[] getMimeTypeProviders() {
+ MimeTypeProvider[] list = this.typeProviders;
+
+ if (list == null) {
+ synchronized (this.typeProviderList) {
+ this.typeProviders = this.typeProviderList.toArray(new MimeTypeProvider[this.typeProviderList.size()]);
+ list = this.typeProviders;
+ }
+ }
+
+ return list;
+ }
+
+ private void registerMimeType(URL mimetypes) {
+ if (mimetypes != null) {
+ InputStream ins = null;
+ try {
+ ins = mimetypes.openStream();
+ this.registerMimeType(ins);
+ } catch (IOException ioe) {
+ // log but don't actually care
+ this.log(LogService.LOG_WARNING, "An error occurred reading "
+ + mimetypes, ioe);
+ } finally {
+ if (ins != null) {
+ try {
+ ins.close();
+ } catch (IOException ioe) {
+ // ignore
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Splits the <code>line</code> on whitespace an registers the MIME type
+ * mappings provided the line contains more than one whitespace separated
+ * fields.
+ *
+ * @throws NullPointerException if <code>line</code> is <code>null</code>.
+ */
+ private void registerMimeType(String line) {
+ String[] parts = line.split("\\s+");
+ if (parts.length > 1) {
+ String[] extensions = new String[parts.length - 1];
+ System.arraycopy(parts, 1, extensions, 0, extensions.length);
+ this.registerMimeType(parts[0], extensions);
+ }
+ }
+
+ private void log(int level, String message, Throwable t) {
+ LogService log = this.logService;
+ if (log != null) {
+ log.log(level, message, t);
+ } else {
+ PrintStream out = (level == LogService.LOG_ERROR)
+ ? System.err
+ : System.out;
+ out.println(message);
+ if (t != null) {
+ t.printStackTrace(out);
+ }
+ }
+ }
+
+}
diff --git a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
new file mode 100644
index 0000000..d130bce
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
@@ -0,0 +1,200 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.sling.commons.mime.internal;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.PrintWriter;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeMap;
+import java.util.Map.Entry;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.felix.webconsole.AbstractWebConsolePlugin;
+
+class MimeTypeWebConsolePlugin extends AbstractWebConsolePlugin {
+
+ /** Serial Version */
+ private static final long serialVersionUID = -2025952303202431607L;
+
+ private static final String LABEL = "mimetypes";
+
+ private static final String TITLE = "MIME Types";
+
+ private final MimeTypeServiceImpl mimeTypeService;
+
+ MimeTypeWebConsolePlugin(MimeTypeServiceImpl mimeTypeService) {
+ this.mimeTypeService = mimeTypeService;
+ }
+
+ @Override
+ public String getLabel() {
+ return LABEL;
+ }
+
+ @Override
+ public String getTitle() {
+ return TITLE;
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest request,
+ HttpServletResponse response) throws ServletException, IOException {
+
+ if (!spoolResource(request, response)) {
+ super.doGet(request, response);
+ }
+ }
+
+ @Override
+ protected void renderContent(HttpServletRequest req, HttpServletResponse res)
+ throws IOException {
+
+ Map<String, Set<String>> mimetab = new TreeMap<String, Set<String>>();
+
+ Map<String, String> extMap = mimeTypeService.getExtensionMap();
+
+ int numExt = 0;
+ for (Entry<String, String> entry : mimeTypeService.getMimeMap().entrySet()) {
+ String ext = entry.getKey();
+ String mime = entry.getValue();
+
+ Set<String> extList = mimetab.get(mime);
+ if (extList == null) {
+ extList = new HashSet<String>();
+ mimetab.put(mime, extList);
+ }
+
+ if (ext.equals(extMap.get(mime))) {
+ ext = "*" + ext + "*";
+ }
+
+ extList.add(ext);
+
+ numExt++;
+ }
+
+ PrintWriter pw = res.getWriter();
+
+ String resLoc = getLabel() + "/res";
+ pw.println("<link href='" + resLoc
+ + "/jquery.treeTable.css' rel='stylesheet' type='text/css' />");
+ pw.println("<script type='text/javascript' src='" + resLoc
+ + "/jquery.treeTable.min.js'></script>");
+ pw.println("<script type='text/javascript'>");
+ pw.println(" $(document).ready(function() {");
+ pw.println(" $('#mimetabtable').treeTable({ treeColumn: 1 });");
+ pw.println(" });");
+ pw.println("</script>");
+
+ pw.println("<div id='plugin_content'>");
+ pw.println("<div class='fullwidth'>");
+ pw.println("<div class='statusline'>Statistic: " + mimetab.size()
+ + " MIME Types, " + numExt + " Extensions</div>");
+ pw.println("</div>");
+
+ pw.println("<div class='table'>");
+ pw.println("<table id='mimetabtable' class='tablelayout'>");
+
+ pw.println("<colgroup>");
+ pw.println("<col width='20px'>");
+ pw.println("<col width='50%'>");
+ pw.println("<col width='50%'>");
+ pw.println("</colgroup>");
+
+ pw.println("<thead>");
+ pw.println("<tr>");
+ pw.println("<th colspan='2'>Mime Type</th>");
+ pw.println("<th>Extensions</th>");
+ pw.println("</tr>");
+ pw.println("</thead>");
+
+ pw.println("<tbody>");
+
+ String currentMajor = null;
+
+ for (Entry<String, Set<String>> entry : mimetab.entrySet()) {
+ String major = getMajorType(entry.getKey());
+
+ if (!major.equals(currentMajor)) {
+ currentMajor = major;
+ pw.println("<tr id='" + currentMajor + "'>");
+ pw.println("<td> </td>");
+ pw.println("<td>" + currentMajor + "</td>");
+ pw.println("<td>--</td>");
+ pw.println("</tr>");
+ }
+
+ pw.println("<tr id='" + entry.getKey().replace('/', '-')
+ + "' class='child-of-" + currentMajor + "'>");
+ pw.println("<td> </td>");
+ pw.println("<td>" + entry.getKey() + "</td>");
+ pw.println("<td>" + entry.getValue() + "</td>");
+ pw.println("</tr>");
+ }
+
+ pw.println("</tbody>");
+ pw.println("</table>");
+ pw.println("</div>");
+ pw.println("</div>");
+ }
+
+ private String getMajorType(String type) {
+ int slash = type.indexOf('/');
+ return (slash > 0) ? type.substring(0, slash) : type;
+ }
+
+ private boolean spoolResource(HttpServletRequest request,
+ HttpServletResponse response) throws IOException {
+
+ String pi = request.getPathInfo();
+ int rPi = pi.indexOf("/res/");
+ if (rPi >= 0) {
+ pi = pi.substring(rPi);
+ InputStream ins = getClass().getResourceAsStream(pi);
+ if (ins != null) {
+ try {
+ response.setContentType(getServletContext().getMimeType(pi));
+ OutputStream out = response.getOutputStream();
+ byte[] buf = new byte[2048];
+ int rd;
+ while ((rd = ins.read(buf)) >= 0) {
+ out.write(buf, 0, rd);
+ }
+ return true;
+ } finally {
+ try {
+ ins.close();
+ } catch (IOException ignore) {
+ }
+ }
+ }
+ }
+
+ return false;
+ }
+
+}
diff --git a/src/main/resources/META-INF/DISCLAIMER b/src/main/resources/META-INF/DISCLAIMER
new file mode 100644
index 0000000..90850c2
--- /dev/null
+++ b/src/main/resources/META-INF/DISCLAIMER
@@ -0,0 +1,7 @@
+Apache Sling is an effort undergoing incubation at The Apache Software Foundation (ASF),
+sponsored by the Apache Jackrabbit PMC. Incubation is required of all newly accepted
+projects until a further review indicates that the infrastructure, communications,
+and decision making process have stabilized in a manner consistent with other
+successful ASF projects. While incubation status is not necessarily a reflection of
+the completeness or stability of the code, it does indicate that the project has yet
+to be fully endorsed by the ASF.
\ No newline at end of file
diff --git a/src/main/resources/META-INF/LICENSE b/src/main/resources/META-INF/LICENSE
new file mode 100644
index 0000000..ef13dba
--- /dev/null
+++ b/src/main/resources/META-INF/LICENSE
@@ -0,0 +1,234 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+
+APACHE SLING SUBCOMPONENTS:
+
+Apache Sling includes subcomponents with separate copyright notices and
+license terms. Your use of these subcomponents is subject to the terms
+and conditions of the following licenses.
+
+JQuery TreeTable plugin
+
+ Copyright (c) 2009 Ludo van den Boom
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
diff --git a/src/main/resources/META-INF/NOTICE b/src/main/resources/META-INF/NOTICE
new file mode 100644
index 0000000..9837e87
--- /dev/null
+++ b/src/main/resources/META-INF/NOTICE
@@ -0,0 +1,13 @@
+Apache Sling MIME type mapping support
+Copyright 2008-2009 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+This product includes software developed by
+Ludo van den Boom (http://blog.cubicphuse.nl/)
+Copyright (c) 2009 Ludo van den Boom
+Licensed under the MIT License
+
+Apache Sling is based on source code originally developed
+by Day Software (http://www.day.com/).
\ No newline at end of file
diff --git a/src/main/resources/META-INF/core_mime.types b/src/main/resources/META-INF/core_mime.types
new file mode 100644
index 0000000..a5eba4e
--- /dev/null
+++ b/src/main/resources/META-INF/core_mime.types
@@ -0,0 +1,1267 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+#
+# This file is copied from
+#
+# http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types
+# Rev. 774215
+#
+#
+# NOTE: Please do not edit this file other than syncing its content
+# with the mime.types file from the Apache httpd project.
+# To add SLING specific default mappings rather ammend the
+# mime.types file.
+#
+#
+# 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/main/resources/META-INF/mime.types b/src/main/resources/META-INF/mime.types
new file mode 100644
index 0000000..23894e0
--- /dev/null
+++ b/src/main/resources/META-INF/mime.types
@@ -0,0 +1,31 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+#
+# Sling extensions to the core_mime.types
+#
+
+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
diff --git a/src/main/resources/OSGI-INF/metatype/metatype.properties b/src/main/resources/OSGI-INF/metatype/metatype.properties
new file mode 100644
index 0000000..b8a8461
--- /dev/null
+++ b/src/main/resources/OSGI-INF/metatype/metatype.properties
@@ -0,0 +1,36 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+
+#
+# This file contains localization strings for configuration labels and
+# descriptions as used in the metatype.xml descriptor generated by the
+# the Felix SCR plugin
+
+mime.service.name = Apache Sling MIME Type Service
+mime.service.description = The Sling MIME Type Service provides support for \
+ maintaining and configuring MIME Type mappings.
+mime.types.name = MIME Types
+mime.types.description = Configures additional MIME type mappings in the \
+ traditional mime.types file format: Each property is a blank space separated \
+ list of strings where the first string is the MIME type and the rest of the \
+ strings are filename extensions referring to the MIME type. Using this \
+ property additional MIME type mappings may be defined. Existing MIME type \
+ mappings cannot be redefined and setting such mappings in this property \
+ has no effect. For a list of existing mappings refer to the MIME Types page.
\ No newline at end of file
diff --git a/src/main/resources/res/jquery.treeTable.css b/src/main/resources/res/jquery.treeTable.css
new file mode 100644
index 0000000..647df57
--- /dev/null
+++ b/src/main/resources/res/jquery.treeTable.css
@@ -0,0 +1,43 @@
+/* jQuery TreeTable Core 2.0 stylesheet
+ *
+ * This file contains styles that are used to display the tree table. Each tree
+ * table is assigned the +treeTable+ class.
+ * ========================================================================= */
+
+/* jquery.treeTable.collapsible
+ * ------------------------------------------------------------------------- */
+.treeTable tr td .expander {
+ background-position: left center;
+ background-repeat: no-repeat;
+ cursor: pointer;
+ padding: 0;
+ zoom: 1; /* IE7 Hack */
+}
+
+.treeTable tr.collapsed td .expander {
+ background-image: url(../../res/imgs/arrow_right.png);
+}
+
+.treeTable tr.expanded td .expander {
+ background-image: url(../../res/imgs/arrow_down.png);
+}
+
+/* jquery.treeTable.sortable
+ * ------------------------------------------------------------------------- */
+.treeTable tr.selected, .treeTable tr.accept {
+ background-color: #3875d7;
+ color: #fff;
+}
+
+.treeTable tr.collapsed.selected td .expander, .treeTable tr.collapsed.accept td .expander {
+ background-image: url(../../res/imgs/arrow_right.png);
+}
+
+.treeTable tr.expanded.selected td .expander, .treeTable tr.expanded.accept td .expander {
+ background-image: url(../../res/imgs/arrow_down.png);
+}
+
+.treeTable .ui-draggable-dragging {
+ color: #000;
+ z-index: 1;
+}
\ No newline at end of file
diff --git a/src/main/resources/res/jquery.treeTable.min.js b/src/main/resources/res/jquery.treeTable.min.js
new file mode 100644
index 0000000..6ba8137
--- /dev/null
+++ b/src/main/resources/res/jquery.treeTable.min.js
@@ -0,0 +1,10 @@
+/* jQuery treeTable Plugin 2.2.1 - http://ludo.cubicphuse.nl/jquery-plugins/treeTable/ */
+(function($){var options;$.fn.treeTable=function(opts){options=$.extend({},$.fn.treeTable.defaults,opts);return this.each(function(){$(this).addClass("treeTable").find("tbody tr").each(function(){if(!options.expandable||$(this)[0].className.search("child-of-")==-1){initialize($(this));}});});};$.fn.treeTable.defaults={childPrefix:"child-of-",expandable:true,indent:19,initialState:"collapsed",treeColumn:0};$.fn.collapse=function(){$(this).addClass("collapsed");childrenOf($(this)).each(fun [...]
+$(this).hide();});return this;};$.fn.expand=function(){$(this).removeClass("collapsed").addClass("expanded");childrenOf($(this)).each(function(){initialize($(this));if($(this).is(".expanded.parent")){$(this).expand();}
+$(this).show();});return this;};$.fn.appendBranchTo=function(destination){var node=$(this);var parent=parentOf(node);var ancestorNames=$.map(ancestorsOf($(destination)),function(a){return a.id;});if($.inArray(node[0].id,ancestorNames)==-1&&(!parent||(destination.id!=parent[0].id))&&destination.id!=node[0].id){indent(node,ancestorsOf(node).length*options.indent*-1);if(parent){node.removeClass(options.childPrefix+parent[0].id);}
+node.addClass(options.childPrefix+destination.id);move(node,destination);indent(node,ancestorsOf(node).length*options.indent);}
+return this;};$.fn.reverse=function(){return this.pushStack(this.get().reverse(),arguments);};$.fn.toggleBranch=function(){if($(this).hasClass("collapsed")){$(this).expand();}else{$(this).removeClass("expanded").collapse();}
+return this;};function ancestorsOf(node){var ancestors=[];while(node=parentOf(node)){ancestors[ancestors.length]=node[0];}
+return ancestors;};function childrenOf(node){return $("table.treeTable tbody tr."+options.childPrefix+node[0].id);};function indent(node,value){var cell=$(node.children("td")[options.treeColumn]);var padding=parseInt(cell.css("padding-left"),10)+value;cell.css("padding-left",+padding+"px");childrenOf(node).each(function(){indent($(this),value);});};function initialize(node){if(!node.hasClass("initialized")){node.addClass("initialized");var childNodes=childrenOf(node);if(!node.hasClass("p [...]
+if(node.hasClass("parent")){var cell=$(node.children("td")[options.treeColumn]);var padding=parseInt(cell.css("padding-left"),10)+options.indent;childNodes.each(function(){$($(this).children("td")[options.treeColumn]).css("padding-left",padding+"px");});if(options.expandable){cell.prepend('<span style="margin-left: -'+options.indent+'px; padding-left: '+options.indent+'px" class="expander"></span>');$(cell[0].firstChild).click(function(){node.toggleBranch();});if(!(node.hasClass("expande [...]
+if(node.hasClass("collapsed")){node.collapse();}else if(node.hasClass("expanded")){node.expand();}}}}};function move(node,destination){node.insertAfter(destination);childrenOf(node).reverse().each(function(){move($(this),node[0]);});};function parentOf(node){var classNames=node[0].className.split(' ');for(key in classNames){if(classNames[key].match("child-of-")){return $("#"+classNames[key].substring(9));}}};})(jQuery);
\ No newline at end of file
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
new file mode 100644
index 0000000..de2c227
--- /dev/null
+++ b/src/test/java/org/apache/sling/commons/mime/internal/MimeTypeServiceImplTest.java
@@ -0,0 +1,194 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sling.commons.mime.internal;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import org.apache.sling.commons.mime.MimeTypeProvider;
+import org.apache.sling.commons.mime.internal.MimeTypeServiceImpl;
+
+import junit.framework.TestCase;
+
+/**
+ * The <code>MimeTypeServiceImplTest</code> TODO
+ */
+public class MimeTypeServiceImplTest extends TestCase {
+
+ private static final String IMAGE_GIF = "image/gif";
+
+ private static final String GIF = "gif";
+
+ private static final String UNMAPPED_GIF = "unmapped_gif";
+
+ private static final String LOG = "log";
+
+ private static final String TXT = "txt";
+
+ private static final String APT = "apt";
+
+ private static final String TEXT_PLAIN = "text/plain";
+
+ private MimeTypeServiceImpl service;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+
+ this.service = new MimeTypeServiceImpl();
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ this.service = null;
+
+ super.tearDown();
+ }
+
+ public void testNoMapping() throws Exception {
+ assertNull(this.service.getMimeType("file." + TXT));
+ assertNull(this.service.getMimeType(TXT));
+ assertNull(this.service.getExtension(TEXT_PLAIN));
+ }
+
+ public void testTxtMapping() throws Exception {
+
+ this.service.registerMimeType(TEXT_PLAIN, TXT, LOG, APT);
+
+ 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(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()));
+
+ assertNull(this.service.getMimeType(GIF));
+
+ assertEquals(TXT, this.service.getExtension(TEXT_PLAIN));
+ }
+
+ public void testFileLoading() throws Exception {
+ loadMimeTypes(MimeTypeServiceImpl.CORE_MIME_TYPES);
+ loadMimeTypes(MimeTypeServiceImpl.MIME_TYPES);
+
+ 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(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(IMAGE_GIF, this.service.getMimeType(GIF));
+ assertNull(this.service.getMimeType(UNMAPPED_GIF));
+
+ assertEquals(TXT, this.service.getExtension(TEXT_PLAIN));
+ }
+
+ public void testProvider() throws Exception {
+ MimeTypeProvider mtp = this.createMimeTypeProvider(IMAGE_GIF, GIF);
+
+ assertNull(this.service.getMimeType(GIF));
+ assertNull(this.service.getExtension(IMAGE_GIF));
+
+ this.service.bindMimeTypeProvider(mtp);
+
+ assertEquals(IMAGE_GIF, this.service.getMimeType(GIF));
+ assertEquals(GIF, this.service.getExtension(IMAGE_GIF));
+
+ this.service.unbindMimeTypeProvider(mtp);
+
+ assertNull(this.service.getMimeType(GIF));
+ assertNull(this.service.getExtension(IMAGE_GIF));
+ }
+
+ public void testProvider2() throws Exception {
+ MimeTypeProvider mtp = this.createMimeTypeProvider(IMAGE_GIF, GIF);
+
+ this.service.registerMimeType(IMAGE_GIF, UNMAPPED_GIF);
+
+ assertEquals(IMAGE_GIF, this.service.getMimeType(UNMAPPED_GIF));
+ assertEquals(UNMAPPED_GIF, this.service.getExtension(IMAGE_GIF));
+
+ assertNull(this.service.getMimeType(GIF));
+
+ this.service.bindMimeTypeProvider(mtp);
+
+ assertEquals(IMAGE_GIF, this.service.getMimeType(UNMAPPED_GIF));
+ assertEquals(UNMAPPED_GIF, this.service.getExtension(IMAGE_GIF));
+
+ assertEquals(IMAGE_GIF, this.service.getMimeType(GIF));
+
+ this.service.unbindMimeTypeProvider(mtp);
+
+ assertEquals(IMAGE_GIF, this.service.getMimeType(UNMAPPED_GIF));
+ assertEquals(UNMAPPED_GIF, this.service.getExtension(IMAGE_GIF));
+
+ assertNull(this.service.getMimeType(GIF));
+ }
+
+ private MimeTypeProvider createMimeTypeProvider(final String type, final String ext) {
+ return new MimeTypeProvider() {
+ public String getMimeType(String name) {
+ if (name == null) {
+ return null;
+ } else if (name.toLowerCase().endsWith(ext)) {
+ return type;
+ } else {
+ return null;
+ }
+ }
+
+ public String getExtension(String mimeType) {
+ if (mimeType == null) {
+ return null;
+ } else if (mimeType.toLowerCase().equals(type)) {
+ return ext;
+ } else {
+ return null;
+ }
+ }
+ };
+
+ }
+
+ 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>.
[sling-org-apache-sling-commons-mime] 11/22: Fix typo in HTML code
Posted by ro...@apache.org.
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 9a50d4d001b2000787c42bc5156f7e98cc5758ed
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Sun May 17 20:25:15 2009 +0000
Fix typo in HTML code
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775754 13f79535-47bb-0310-9956-ffa450edef68
---
.../apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
index 2945f59..432b275 100644
--- a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
+++ b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
@@ -121,7 +121,7 @@ class MimeTypeWebConsolePlugin extends AbstractWebConsolePlugin {
pw.println("<thead>");
pw.println("<tr>");
pw.println("<th colspan='2'>Mime Type</th>");
- pw.println("<th'>Extensions</th>");
+ pw.println("<th>Extensions</th>");
pw.println("</tr>");
pw.println("</thead>");
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 04/22: Use next dev version
of parent pom
Posted by ro...@apache.org.
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 c991ecce9dc1e1e49a77790cb05b356edd2f5a83
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue May 5 17:11:34 2009 +0000
Use next dev version of parent pom
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@771937 13f79535-47bb-0310-9956-ffa450edef68
---
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index f32126c..eb6efb0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.sling</groupId>
<artifactId>sling</artifactId>
- <version>5-incubator</version>
+ <version>6-incubator-SNAPSHOT</version>
<relativePath>../../../parent/pom.xml</relativePath>
</parent>
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 09/22: SLING-965 add web
console plugin to display known mime type mappings
Posted by ro...@apache.org.
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 7dbdfcd894954cefb06f0bd924524b2dc82719c2
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Sun May 17 17:14:57 2009 +0000
SLING-965 add web console plugin to display known mime type mappings
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775718 13f79535-47bb-0310-9956-ffa450edef68
---
LICENSE | 32 ++++
NOTICE | 4 +
pom.xml | 9 +
.../commons/mime/internal/MimeTypeServiceImpl.java | 46 ++++-
.../mime/internal/MimeTypeWebConsolePlugin.java | 193 +++++++++++++++++++++
src/main/resources/META-INF/LICENSE | 32 ++++
src/main/resources/META-INF/NOTICE | 4 +
src/main/resources/res/jquery.treeTable.css | 43 +++++
src/main/resources/res/jquery.treeTable.min.js | 10 ++
9 files changed, 372 insertions(+), 1 deletion(-)
diff --git a/LICENSE b/LICENSE
index d645695..ef13dba 100644
--- a/LICENSE
+++ b/LICENSE
@@ -200,3 +200,35 @@
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+APACHE SLING SUBCOMPONENTS:
+
+Apache Sling includes subcomponents with separate copyright notices and
+license terms. Your use of these subcomponents is subject to the terms
+and conditions of the following licenses.
+
+JQuery TreeTable plugin
+
+ Copyright (c) 2009 Ludo van den Boom
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
diff --git a/NOTICE b/NOTICE
index 6c93777..97c463f 100644
--- a/NOTICE
+++ b/NOTICE
@@ -6,3 +6,7 @@ by Day Software (http://www.day.com/).
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
+
+This product includes software developed by
+Copyright (c) 2009 Ludo van den Boom (http://blog.cubicphuse.nl/)
+Licensed under the MIT License
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index f32126c..b8591c8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -88,6 +88,15 @@
<artifactId>org.osgi.compendium</artifactId>
</dependency>
<dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.webconsole</artifactId>
+ <version>1.2.0</version>
+ </dependency>
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
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 f11f084..47e7947 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
@@ -23,20 +23,25 @@ import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.URL;
import java.util.ArrayList;
+import java.util.Dictionary;
import java.util.HashMap;
+import java.util.Hashtable;
import java.util.List;
import java.util.Map;
+import org.apache.felix.webconsole.WebConsoleConstants;
import org.apache.sling.commons.mime.MimeTypeProvider;
import org.apache.sling.commons.mime.MimeTypeService;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleEvent;
import org.osgi.framework.BundleListener;
+import org.osgi.framework.ServiceRegistration;
import org.osgi.service.component.ComponentContext;
import org.osgi.service.log.LogService;
/**
- * The <code>MimeTypeServiceImpl</code> TODO
+ * The <code>MimeTypeServiceImpl</code> is the official implementation of the
+ * {@link MimeTypeService} interface.
*
* @scr.component immediate="false" metatype="no"
* @scr.property name="service.vendor" value="The Apache Software Foundation"
@@ -63,6 +68,10 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
private List<MimeTypeProvider> typeProviderList = new ArrayList<MimeTypeProvider>();
+ private MimeTypeWebConsolePlugin webConsolePlugin;
+
+ private ServiceRegistration webConsolePluginService;
+
/**
* @see org.apache.sling.commons.mime.MimeTypeService#getMimeType(java.lang.String)
*/
@@ -241,10 +250,35 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
this.registerMimeType(bundles[i].getEntry(MIME_TYPES));
}
}
+
+ try {
+ MimeTypeWebConsolePlugin plugin = new MimeTypeWebConsolePlugin(this);
+ plugin.activate(context.getBundleContext());
+
+ Dictionary<String, String> props = new Hashtable<String, String>();
+ props.put(WebConsoleConstants.PLUGIN_LABEL, plugin.getLabel());
+
+ webConsolePluginService = context.getBundleContext().registerService(
+ WebConsoleConstants.SERVICE_NAME, plugin, props);
+ webConsolePlugin = plugin;
+ } catch (Throwable t) {
+ // don't care, we thus don't have the console plugin
+ }
}
protected void deactivate(ComponentContext context) {
context.getBundleContext().removeBundleListener(this);
+
+ if (webConsolePluginService != null) {
+ webConsolePluginService.unregister();
+ webConsolePluginService = null;
+
+ }
+
+ if (webConsolePlugin != null) {
+ webConsolePlugin.deactivate();
+ webConsolePlugin = null;
+ }
}
protected void bindMimeTypeProvider(MimeTypeProvider mimeTypeProvider) {
@@ -268,4 +302,14 @@ public class MimeTypeServiceImpl implements MimeTypeService, BundleListener {
this.registerMimeType(event.getBundle().getEntry(MIME_TYPES));
}
}
+
+ // ---------- plugin support -----------------------------------------------
+
+ Map<String, String> getMimeMap() {
+ return mimeTab;
+ }
+
+ Map<String, String> getExtensionMap() {
+ return extensionMap;
+ }
}
diff --git a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
new file mode 100644
index 0000000..2945f59
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
@@ -0,0 +1,193 @@
+/*
+ * Copyright 1997-2009 Day Management AG
+ * Barfuesserplatz 6, 4001 Basel, Switzerland
+ * All Rights Reserved.
+ *
+ * This software is the confidential and proprietary information of
+ * Day Management AG, ("Confidential Information"). You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into
+ * with Day.
+ */
+package org.apache.sling.commons.mime.internal;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.PrintWriter;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeMap;
+import java.util.Map.Entry;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.felix.webconsole.AbstractWebConsolePlugin;
+
+class MimeTypeWebConsolePlugin extends AbstractWebConsolePlugin {
+
+ /** Serial Version */
+ private static final long serialVersionUID = -2025952303202431607L;
+
+ private static final String LABEL = "mimetypes";
+
+ private static final String TITLE = "MIME Types";
+
+ private final MimeTypeServiceImpl mimeTypeService;
+
+ MimeTypeWebConsolePlugin(MimeTypeServiceImpl mimeTypeService) {
+ this.mimeTypeService = mimeTypeService;
+ }
+
+ @Override
+ public String getLabel() {
+ return LABEL;
+ }
+
+ @Override
+ public String getTitle() {
+ return TITLE;
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest request,
+ HttpServletResponse response) throws ServletException, IOException {
+
+ if (!spoolResource(request, response)) {
+ super.doGet(request, response);
+ }
+ }
+
+ @Override
+ protected void renderContent(HttpServletRequest req, HttpServletResponse res)
+ throws IOException {
+
+ Map<String, Set<String>> mimetab = new TreeMap<String, Set<String>>();
+
+ Map<String, String> extMap = mimeTypeService.getExtensionMap();
+
+ int numExt = 0;
+ for (Entry<String, String> entry : mimeTypeService.getMimeMap().entrySet()) {
+ String ext = entry.getKey();
+ String mime = entry.getValue();
+
+ Set<String> extList = mimetab.get(mime);
+ if (extList == null) {
+ extList = new HashSet<String>();
+ mimetab.put(mime, extList);
+ }
+
+ if (ext.equals(extMap.get(mime))) {
+ ext = "*" + ext + "*";
+ }
+
+ extList.add(ext);
+
+ numExt++;
+ }
+
+ PrintWriter pw = res.getWriter();
+
+ String resLoc = getLabel() + "/res";
+ pw.println("<link href='" + resLoc
+ + "/jquery.treeTable.css' rel='stylesheet' type='text/css' />");
+ pw.println("<script type='text/javascript' src='" + resLoc
+ + "/jquery.treeTable.min.js'></script>");
+ pw.println("<script type='text/javascript'>");
+ pw.println(" $(document).ready(function() {");
+ pw.println(" $('#mimetabtable').treeTable({ treeColumn: 1 });");
+ pw.println(" });");
+ pw.println("</script>");
+
+ pw.println("<div id='plugin_content'>");
+ pw.println("<div class='fullwidth'>");
+ pw.println("<div class='statusline'>Statistic: " + mimetab.size()
+ + " MIME Types, " + numExt + " Extensions</div>");
+ pw.println("</div>");
+
+ pw.println("<div class='table'>");
+ pw.println("<table id='mimetabtable' class='tablelayout'>");
+
+ pw.println("<colgroup>");
+ pw.println("<col width='20px'>");
+ pw.println("<col width='50%'>");
+ pw.println("<col width='50%'>");
+ pw.println("</colgroup>");
+
+ pw.println("<thead>");
+ pw.println("<tr>");
+ pw.println("<th colspan='2'>Mime Type</th>");
+ pw.println("<th'>Extensions</th>");
+ pw.println("</tr>");
+ pw.println("</thead>");
+
+ pw.println("<tbody>");
+
+ String currentMajor = null;
+
+ for (Entry<String, Set<String>> entry : mimetab.entrySet()) {
+ String major = getMajorType(entry.getKey());
+
+ if (!major.equals(currentMajor)) {
+ currentMajor = major;
+ pw.println("<tr id='" + currentMajor + "'>");
+ pw.println("<td> </td>");
+ pw.println("<td>" + currentMajor + "</td>");
+ pw.println("<td>--</td>");
+ pw.println("</tr>");
+ }
+
+ pw.println("<tr id='" + entry.getKey().replace('/', '-')
+ + "' class='child-of-" + currentMajor + "'>");
+ pw.println("<td> </td>");
+ pw.println("<td>" + entry.getKey() + "</td>");
+ pw.println("<td>" + entry.getValue() + "</td>");
+ pw.println("</tr>");
+ }
+
+ pw.println("</tbody>");
+ pw.println("</table>");
+ pw.println("</div>");
+ pw.println("</div>");
+ }
+
+ private String getMajorType(String type) {
+ int slash = type.indexOf('/');
+ return (slash > 0) ? type.substring(0, slash) : type;
+ }
+
+ private boolean spoolResource(HttpServletRequest request,
+ HttpServletResponse response) throws IOException {
+
+ String pi = request.getPathInfo();
+ int rPi = pi.indexOf("/res/");
+ if (rPi >= 0) {
+ pi = pi.substring(rPi);
+ InputStream ins = getClass().getResourceAsStream(pi);
+ if (ins != null) {
+ try {
+ response.setContentType(getServletContext().getMimeType(pi));
+ OutputStream out = response.getOutputStream();
+ byte[] buf = new byte[2048];
+ int rd;
+ while ((rd = ins.read(buf)) >= 0) {
+ out.write(buf, 0, rd);
+ }
+ return true;
+ } finally {
+ try {
+ ins.close();
+ } catch (IOException ignore) {
+ }
+ }
+ }
+ }
+
+ return false;
+ }
+
+}
diff --git a/src/main/resources/META-INF/LICENSE b/src/main/resources/META-INF/LICENSE
index d645695..ef13dba 100644
--- a/src/main/resources/META-INF/LICENSE
+++ b/src/main/resources/META-INF/LICENSE
@@ -200,3 +200,35 @@
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+APACHE SLING SUBCOMPONENTS:
+
+Apache Sling includes subcomponents with separate copyright notices and
+license terms. Your use of these subcomponents is subject to the terms
+and conditions of the following licenses.
+
+JQuery TreeTable plugin
+
+ Copyright (c) 2009 Ludo van den Boom
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
diff --git a/src/main/resources/META-INF/NOTICE b/src/main/resources/META-INF/NOTICE
index 6c93777..97c463f 100644
--- a/src/main/resources/META-INF/NOTICE
+++ b/src/main/resources/META-INF/NOTICE
@@ -6,3 +6,7 @@ by Day Software (http://www.day.com/).
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
+
+This product includes software developed by
+Copyright (c) 2009 Ludo van den Boom (http://blog.cubicphuse.nl/)
+Licensed under the MIT License
\ No newline at end of file
diff --git a/src/main/resources/res/jquery.treeTable.css b/src/main/resources/res/jquery.treeTable.css
new file mode 100644
index 0000000..647df57
--- /dev/null
+++ b/src/main/resources/res/jquery.treeTable.css
@@ -0,0 +1,43 @@
+/* jQuery TreeTable Core 2.0 stylesheet
+ *
+ * This file contains styles that are used to display the tree table. Each tree
+ * table is assigned the +treeTable+ class.
+ * ========================================================================= */
+
+/* jquery.treeTable.collapsible
+ * ------------------------------------------------------------------------- */
+.treeTable tr td .expander {
+ background-position: left center;
+ background-repeat: no-repeat;
+ cursor: pointer;
+ padding: 0;
+ zoom: 1; /* IE7 Hack */
+}
+
+.treeTable tr.collapsed td .expander {
+ background-image: url(../../res/imgs/arrow_right.png);
+}
+
+.treeTable tr.expanded td .expander {
+ background-image: url(../../res/imgs/arrow_down.png);
+}
+
+/* jquery.treeTable.sortable
+ * ------------------------------------------------------------------------- */
+.treeTable tr.selected, .treeTable tr.accept {
+ background-color: #3875d7;
+ color: #fff;
+}
+
+.treeTable tr.collapsed.selected td .expander, .treeTable tr.collapsed.accept td .expander {
+ background-image: url(../../res/imgs/arrow_right.png);
+}
+
+.treeTable tr.expanded.selected td .expander, .treeTable tr.expanded.accept td .expander {
+ background-image: url(../../res/imgs/arrow_down.png);
+}
+
+.treeTable .ui-draggable-dragging {
+ color: #000;
+ z-index: 1;
+}
\ No newline at end of file
diff --git a/src/main/resources/res/jquery.treeTable.min.js b/src/main/resources/res/jquery.treeTable.min.js
new file mode 100644
index 0000000..6ba8137
--- /dev/null
+++ b/src/main/resources/res/jquery.treeTable.min.js
@@ -0,0 +1,10 @@
+/* jQuery treeTable Plugin 2.2.1 - http://ludo.cubicphuse.nl/jquery-plugins/treeTable/ */
+(function($){var options;$.fn.treeTable=function(opts){options=$.extend({},$.fn.treeTable.defaults,opts);return this.each(function(){$(this).addClass("treeTable").find("tbody tr").each(function(){if(!options.expandable||$(this)[0].className.search("child-of-")==-1){initialize($(this));}});});};$.fn.treeTable.defaults={childPrefix:"child-of-",expandable:true,indent:19,initialState:"collapsed",treeColumn:0};$.fn.collapse=function(){$(this).addClass("collapsed");childrenOf($(this)).each(fun [...]
+$(this).hide();});return this;};$.fn.expand=function(){$(this).removeClass("collapsed").addClass("expanded");childrenOf($(this)).each(function(){initialize($(this));if($(this).is(".expanded.parent")){$(this).expand();}
+$(this).show();});return this;};$.fn.appendBranchTo=function(destination){var node=$(this);var parent=parentOf(node);var ancestorNames=$.map(ancestorsOf($(destination)),function(a){return a.id;});if($.inArray(node[0].id,ancestorNames)==-1&&(!parent||(destination.id!=parent[0].id))&&destination.id!=node[0].id){indent(node,ancestorsOf(node).length*options.indent*-1);if(parent){node.removeClass(options.childPrefix+parent[0].id);}
+node.addClass(options.childPrefix+destination.id);move(node,destination);indent(node,ancestorsOf(node).length*options.indent);}
+return this;};$.fn.reverse=function(){return this.pushStack(this.get().reverse(),arguments);};$.fn.toggleBranch=function(){if($(this).hasClass("collapsed")){$(this).expand();}else{$(this).removeClass("expanded").collapse();}
+return this;};function ancestorsOf(node){var ancestors=[];while(node=parentOf(node)){ancestors[ancestors.length]=node[0];}
+return ancestors;};function childrenOf(node){return $("table.treeTable tbody tr."+options.childPrefix+node[0].id);};function indent(node,value){var cell=$(node.children("td")[options.treeColumn]);var padding=parseInt(cell.css("padding-left"),10)+value;cell.css("padding-left",+padding+"px");childrenOf(node).each(function(){indent($(this),value);});};function initialize(node){if(!node.hasClass("initialized")){node.addClass("initialized");var childNodes=childrenOf(node);if(!node.hasClass("p [...]
+if(node.hasClass("parent")){var cell=$(node.children("td")[options.treeColumn]);var padding=parseInt(cell.css("padding-left"),10)+options.indent;childNodes.each(function(){$($(this).children("td")[options.treeColumn]).css("padding-left",padding+"px");});if(options.expandable){cell.prepend('<span style="margin-left: -'+options.indent+'px; padding-left: '+options.indent+'px" class="expander"></span>');$(cell[0].firstChild).click(function(){node.toggleBranch();});if(!(node.hasClass("expande [...]
+if(node.hasClass("collapsed")){node.collapse();}else if(node.hasClass("expanded")){node.expand();}}}}};function move(node,destination){node.insertAfter(destination);childrenOf(node).reverse().each(function(){move($(this),node[0]);});};function parentOf(node){var classNames=node[0].className.split(' ');for(key in classNames){if(classNames[key].match("child-of-")){return $("#"+classNames[key].substring(9));}}};})(jQuery);
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 16/22: Fix license header ....
Posted by ro...@apache.org.
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 a1c2b52500c79ddcc99148a863179dfd99b454e6
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Mon May 18 07:50:50 2009 +0000
Fix license header ....
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@775850 13f79535-47bb-0310-9956-ffa450edef68
---
.../mime/internal/MimeTypeWebConsolePlugin.java | 23 ++++++++++++++--------
1 file changed, 15 insertions(+), 8 deletions(-)
diff --git a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
index 432b275..d130bce 100644
--- a/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
+++ b/src/main/java/org/apache/sling/commons/mime/internal/MimeTypeWebConsolePlugin.java
@@ -1,13 +1,20 @@
/*
- * Copyright 1997-2009 Day Management AG
- * Barfuesserplatz 6, 4001 Basel, Switzerland
- * All Rights Reserved.
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
*
- * This software is the confidential and proprietary information of
- * Day Management AG, ("Confidential Information"). You shall not
- * disclose such Confidential Information and shall use it only in
- * accordance with the terms of the license agreement you entered into
- * with Day.
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
*/
package org.apache.sling.commons.mime.internal;
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 06/22: SLING-964 Update MIME
type list with list from Apache httpd
Posted by ro...@apache.org.
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 97878c10edda4d22bd20a82ccbcf211c34aebbaf
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Wed May 13 08:39:57 2009 +0000
SLING-964 Update MIME type list with list from Apache httpd
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@774251 13f79535-47bb-0310-9956-ffa450edef68
---
src/main/resources/META-INF/mime.types | 1354 +++++++++++++++++++++++++++++---
1 file changed, 1246 insertions(+), 108 deletions(-)
diff --git a/src/main/resources/META-INF/mime.types b/src/main/resources/META-INF/mime.types
index 18ac569..309de31 100644
--- a/src/main/resources/META-INF/mime.types
+++ b/src/main/resources/META-INF/mime.types
@@ -18,117 +18,1255 @@
#
#
-# A simple, old format, mime.types file
-#
-application/andrew-inset ez
+# Sling Mappings
application/compress z
-application/java-archive jar
-application/java-serialized-object ser
-application/java-vm class
-application/json json
-application/mac-binhex40 hqx
-application/mac-compactpro cpt
application/msexcel xls xlsx
-application/msword doc docx
application/mspowerpoint ppt pptx
-application/octet-stream bin class dms exe lha lzh msi
-application/oda oda
-application/pdf pdf
+application/octet-stream class exe msi
application/photoshop psd
-application/postscript ps ai eps
-application/rss+xml rss
-application/rtf rtf
-application/smil smi smil
-application/vnd.mif mif
-application/vnd.wap.wmlc wmlc
-application/vnd.wap.wmlscriptc wmlsc
-application/vnd.wap.wtls-ca-certificate wtls-ca-certificate
-application/x-bcpio bcpio
-application/x-bzip2 bz2
-application/x-cdlink vcd
-application/x-chess-pgn pgn
-application/x-cpio cpio
-application/x-csh csh
-application/x-director dcr dir dxr
-application/x-dvi dvi
-application/x-futuresplash spl
-application/x-gtar gtar
-application/x-gzip gz tgz
-application/x-hdf hdf
-application/x-java-jnlp-file jnlp
-application/x-javascript js
-application/x-koan skd skm skp skt
-application/x-latex latex
-application/x-netcdf cdf nc
-application/x-quark-express qxd
-application/x-rpm rpm
-application/x-shar shar
-application/x-shockwave-flash swf
-application/x-sh sh
-application/x-stuffit sit
-application/x-sv4cpio sv4cpio
-application/x-sv4crc sv4crc
-application/x-tar tar
-application/x-tcl tcl
-application/x-texinfo texinfo texi
-application/x-tex tex
-application/x-troff-man man
-application/x-troff-me me
-application/x-troff-ms ms
-application/x-troff tr t roff
-application/x-ustar ustar
-application/x-wais-source src
-application/x-x509-ca-cert crt
-application/xml xml
-application/zip zip
-audio/basic au snd
-audio/midi midi kar mid
-audio/mpeg mp3 mp2 mpga
-audio/x-aifc aifc
-audio/x-aiff aif aiff
-audio/x-mpeg mpeg mpg
-audio/x-pn-realaudio ram rm
-audio/x-realaudio ra
-audio/x-vorbis ogg
-audio/x-wav wav
-chemical/x-mdl-molfile mol
-chemical/x-pdb pdb xyz
-image/bmp bmp
-image/gif gif
-image/ief ief
-image/jpeg jpeg jpg jpe
image/pict pict
-image/png png
-image/tiff tiff tif
-image/vnd.wap.wbmp wbmp
-image/x-cmu-raster ras
-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
-model/iges iges igs
-model/mesh mesh msh silo
-model/vrml vrml wrl
-text/any any
-text/css css
-text/html html htm
-text/plain txt asc log text apt esp ecma jsp
-text/richtext rtx
+text/plain apt
text/rtf rtf
-text/sgml sgml sgm
-text/tab-separated-values tsv
-text/vnd.wap.wml wml
-text/vnd.wap.wmlscript wmls
-text/x-java-source java
-text/x-setext etx
-video/mpeg mpeg mpg mpe
-video/quicktime qt mov
-video/x.ms.asf asf
-video/x.ms.asx asx
-video/x-msvideo avi
-video/x-sgi-movie movie
-x-conference/x-cooltalk ice
+
+
+#
+# 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
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.
[sling-org-apache-sling-commons-mime] 05/22: SLING-964 Redefine xml
as application/xml and add application/rss+xml for rss
Posted by ro...@apache.org.
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 c9655ecd83a09cf1b5d838aaa51c6dc5c1109b98
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Tue May 12 13:37:40 2009 +0000
SLING-964 Redefine xml as application/xml and add application/rss+xml for rss
git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/mime@773890 13f79535-47bb-0310-9956-ffa450edef68
---
src/main/resources/META-INF/mime.types | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/main/resources/META-INF/mime.types b/src/main/resources/META-INF/mime.types
index 06730b9..18ac569 100644
--- a/src/main/resources/META-INF/mime.types
+++ b/src/main/resources/META-INF/mime.types
@@ -36,6 +36,7 @@ application/oda oda
application/pdf pdf
application/photoshop psd
application/postscript ps ai eps
+application/rss+xml rss
application/rtf rtf
application/smil smi smil
application/vnd.mif mif
@@ -78,6 +79,7 @@ application/x-troff tr t roff
application/x-ustar ustar
application/x-wais-source src
application/x-x509-ca-cert crt
+application/xml xml
application/zip zip
audio/basic au snd
audio/midi midi kar mid
@@ -121,7 +123,6 @@ text/sgml sgml sgm
text/tab-separated-values tsv
text/vnd.wap.wml wml
text/vnd.wap.wmlscript wmls
-text/xml xml
text/x-java-source java
text/x-setext etx
video/mpeg mpeg mpg mpe
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.