add method to return a single MIME type
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Mon, 2 Jun 2008 14:39:26 +0000 (16:39 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Mon, 2 Jun 2008 14:39:26 +0000 (16:39 +0200)
src/net/pterodactylus/util/io/MimeTypes.java

index 449b7c1..9ba1afa 100644 (file)
@@ -32,6 +32,9 @@ import java.util.Map;
  */
 public class MimeTypes {
 
+       /** The default MIME type for unknown extensions. */
+       private static final String DEFAULT_CONTENT_TYPE = "application/octet-stream";
+
        /** List of all MIME types. */
        private static final List<String> mimeTypes = new ArrayList<String>();
 
@@ -787,6 +790,23 @@ public class MimeTypes {
                return Collections.emptyList();
        }
 
+       /**
+        * Returns a default MIME type for the given extension. If the extension
+        * does not match a MIME type the default MIME typ
+        * “application/octet-stream” is returned.
+        * 
+        * @param extension
+        *            The extension to get the MIME type for
+        * @return The MIME type for the extension, or the default MIME type
+        *         “application/octet-stream”
+        */
+       public static String getMimeType(String extension) {
+               if (extensionMimeTypes.containsKey(extension)) {
+                       return extensionMimeTypes.get(extension).get(0);
+               }
+               return DEFAULT_CONTENT_TYPE;
+       }
+
        //
        // PRIVATE METHODS
        //
@@ -801,7 +821,7 @@ public class MimeTypes {
         */
        private static void addMimeType(String mimeType, String... extensions) {
                mimeTypes.add(mimeType);
-               for (String extension: extensions) {
+               for (String extension : extensions) {
                        if (!mimeTypeExtensions.containsKey(mimeType)) {
                                mimeTypeExtensions.put(mimeType, new ArrayList<String>());
                        }