X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Fmodule%2FModuleMediaType.java;h=19850a53660d992bc169e056767e285bc7318afb;hb=63e0ee1fb8038eb6d8f0190cf38c3b3ab2727216;hp=8a75c378fd6b28ca88407cba3c50fb52cb272d03;hpb=8b91e8d8bf4a31a88440a404e83238dcf32f8f4a;p=mir.git diff --git a/source/mircoders/module/ModuleMediaType.java b/source/mircoders/module/ModuleMediaType.java index 8a75c378..19850a53 100755 --- a/source/mircoders/module/ModuleMediaType.java +++ b/source/mircoders/module/ModuleMediaType.java @@ -30,35 +30,28 @@ package mircoders.module; -import java.util.List; - import mir.entity.Entity; import mir.entity.EntityList; import mir.log.LoggerWrapper; import mir.module.AbstractModule; -import mir.module.ModuleExc; -import mir.module.ModuleFailure; -import mir.storage.StorageObject; import mir.util.JDBCStringRoutines; import mir.util.StringRoutines; import mircoders.storage.DatabaseMediaType; +import java.util.List; + public class ModuleMediaType extends AbstractModule { static LoggerWrapper logger = new LoggerWrapper("Module.Content"); public ModuleMediaType() { - this (DatabaseMediaType.getInstance()); + super(DatabaseMediaType.getInstance()); } - public ModuleMediaType(StorageObject aStorage) { - this.storage = aStorage; - } - - public Entity findMediaTypeForMimeType(String aMimeType) throws ModuleExc, ModuleFailure { + public Entity findMediaTypeForMimeType(String aMimeType) { List contentTypeParts = StringRoutines.splitString(aMimeType, "/"); if (contentTypeParts.size()!=2) { - throw new InvalidMimeTypeExc("Invalid mimetype: " + aMimeType, aMimeType); + return null; } String mimeTypeMajor = (String) contentTypeParts.get(0); @@ -69,34 +62,20 @@ public class ModuleMediaType extends AbstractModule { mediaTypes = DatabaseMediaType.getInstance().selectByWhereClause("mime_type = '"+JDBCStringRoutines.escapeStringLiteral(mimeTypeMajor+"/*")+"'"); } if (mediaTypes.size() == 0) { - throw new UnsupportedMimeTypeExc("Unsupported mimetype: " + aMimeType, aMimeType); + return null; } return (Entity) mediaTypes.elementAt(0); } - public static class MimeTypeExc extends ModuleExc { - private String mimeType; - - public MimeTypeExc(String aMessage, String aMimeType) { - super (aMessage); - mimeType = aMimeType; - } - - public String getMimeType() { - return mimeType; - } - } + public Entity findMediaTypeForExtension(String anExtension) { + EntityList mediaTypes = DatabaseMediaType.getInstance().selectByWhereClause("name = '"+JDBCStringRoutines.escapeStringLiteral(anExtension)+"'"); - public static class UnsupportedMimeTypeExc extends MimeTypeExc { - public UnsupportedMimeTypeExc(String aMessage, String aMimeType) { - super(aMessage, aMimeType); + if (mediaTypes.size() == 0) { + return null; } - } - - public static class InvalidMimeTypeExc extends MimeTypeExc { - public InvalidMimeTypeExc(String aMessage, String aMimeType) { - super(aMessage, aMimeType); + else { + return (Entity) mediaTypes.elementAt(0); } } } \ No newline at end of file