import mir.log.LoggerWrapper;
import mir.media.MediaFailure;
import mir.media.MediaHandler;
+import mir.media.MediaExc;
import mir.misc.StringUtil;
import mir.session.UploadedFile;
import mir.storage.Database;
-import mir.util.FileFunctions;
+import mir.storage.DatabaseExc;
+import mir.util.FileRoutines;
import mircoders.module.ModuleMediaType;
import java.util.GregorianCalendar;
* Processes an uploaded media file.
* Will create the media entity and so on.
*/
- public static Entity processMediaUpload(UploadedFile aFile, Map aValues) throws UnsupportedMediaTypeExc, MediaFailure {
+ public static Entity processMediaUpload(UploadedFile aFile, Map aValues)
+ throws UnsupportedMediaTypeExc, MediaExc, DatabaseExc {
MediaHandler mediaHandler;
Entity mediaType = null;
Database mediaStorage;
}
if (mediaType==null) {
- String extension = FileFunctions.getExtension(aFile.getFileName());
+ String extension = FileRoutines.getExtension(aFile.getFileName());
mediaType = mediaTypeModule.findMediaTypeForExtension(extension);
}
values.put("to_media_type", mediaType.getId());
- try {
- mediaEntity = (Entity) mediaStorage.getEntityClass().newInstance();
- mediaEntity.setStorage(mediaStorage);
- }
- catch (Throwable e) {
- throw new MediaFailure(e);
- }
-
+ mediaEntity = mediaStorage.createNewEntity();
mediaEntity.setFieldValues(values);
+ mediaEntity.insert();
+ mediaHandler.store(aFile, mediaEntity, mediaType);
try {
- mediaEntity.insert();
- mediaHandler.store(aFile, mediaEntity, mediaType);
}
catch (Throwable e) {
throw new MediaFailure(e);