- public void set (InputStream in, Entity ent, Entity mediaTypeEnt ) throws MediaExc, MediaFailure {
- String ext = mediaTypeEnt.getValue("name");
- String mediaFname = ent.getId() + "." + ext;
- String date = ent.getValue("date");
- String datePath = StringUtil.webdbDate2path(date);
- try {
- long size = FileUtil.write(getStoragePath() + File.separator + datePath +
- File.separator + mediaFname, in);
- ent.setValueForProperty("publish_path", datePath + mediaFname);
- ent.setValueForProperty("size", new Long(size).toString());
- ent.update();
- }
- catch (Throwable e) {
- logger.error("MediaHandlerGeneric.set: " + e.toString());
- throw new MediaFailure(e);
- }
+ /** {@inheritDoc} */
+ public void store(UploadedFile anUploadedFile, Entity aMedia, Entity aMediaType) throws MediaExc, MediaFailure {
+ try {
+ anUploadedFile.writeToFile(getMediaStorageFile(aMedia, aMediaType));
+ aMedia.setFieldValue("publish_path", getRelativeMediaStoragePath(aMedia, aMediaType));
+ aMedia.setFieldValue("size", Long.toString(getMediaStorageFile(aMedia, aMediaType).length()));
+ aMedia.update();
+ reportChange(getMediaStorageFile(aMedia, aMediaType).getAbsolutePath());
+ }
+ catch (Throwable e) {
+ logger.error("MediaHandlerGeneric.set: " + e.toString());
+ throw new MediaFailure(e);