X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fnet%2Fpterodactylus%2Futil%2Fio%2FMimeTypes.java;h=9ba1afa93479411d3db017f2ea46090e40a372f4;hb=f42b615dcbe440d9908385754948d6448a3b67ff;hp=b6ffff0d5f77f538f2178fe9633dd2c583298d4f;hpb=cf127faffabd3f07b0acc6de9ea746059d571b56;p=jSite2.git diff --git a/src/net/pterodactylus/util/io/MimeTypes.java b/src/net/pterodactylus/util/io/MimeTypes.java index b6ffff0..9ba1afa 100644 --- a/src/net/pterodactylus/util/io/MimeTypes.java +++ b/src/net/pterodactylus/util/io/MimeTypes.java @@ -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 mimeTypes = new ArrayList(); @@ -768,8 +771,8 @@ public class MimeTypes { * * @return All known MIME types */ - public List getAllMimeTypes() { - return mimeTypes; + public static List getAllMimeTypes() { + return new ArrayList(mimeTypes); } /** @@ -780,13 +783,30 @@ public class MimeTypes { * @return A list of MIME types, or an empty list if there are no registered * MIME types for the extension */ - public List getMimeTypes(String extension) { + public static List getMimeTypes(String extension) { if (extensionMimeTypes.containsKey(extension)) { return extensionMimeTypes.get(extension); } 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()); }