2 * put your module comment here
17 * Handles real video. like MediaHandlerAudio, except it manages the ram file, too.
19 * @see mir.media.MediaHandlerGeneric
20 * @see mir.media.MirMedia
21 * @author john <john@manifestor.org>
26 public class MediaHandlerRealVideo extends MediaHandlerGeneric implements MirMedia
29 private String imageHost = MirConfig.getProp("Producer.Image.Host");
30 private static String imageRoot = MirConfig.getProp("Producer.ImageRoot");
31 private Logfile theLog = Logfile.getInstance(this.getClass().getName());
32 public boolean set (byte[] uploadedData, Entity ent, Entity mediaTypeEnt ) {
33 String ext = mediaTypeEnt.getValue("name");
34 String dir = MirConfig.getProp("Producer.Media.Path");
35 String rtspDir = MirConfig.getProp("Producer.RealMedia.Path");
36 String mediaHost = MirConfig.getProp("Producer.Media.Host");
37 String rtspMediaHost = MirConfig.getProp("Producer.RealMedia.Host");
39 String mediaFname = ent.getId()+"."+ext;
40 String RealMediaPointer = rtspMediaHost+mediaFname;
41 String RealMediaFile = ent.getId()+".ram";
42 String date = ent.getValue("date");
43 String datePath = StringUtil.webdbDate2path(date);
44 Integer size = new Integer(uploadedData.length);
45 if(FileUtil.write(dir+"/"+datePath+"/"+mediaFname, uploadedData)) {
46 //if(FileUtil.write(rtspDir+"/"+mediaFname, uploadedData)) {
47 //were done with the data, dereference.
52 FileUtil.write(dir+"/"+RealMediaFile,RealMediaPointer.getBytes());
54 ent.setValueForProperty("is_produced", "1");
55 ent.setValueForProperty("icon_is_produced", "1");
56 ent.setValueForProperty("publish_path",datePath+"/"+mediaFname);
57 //ent.setValueForProperty("publish_path", RealMediaFile);
58 ent.setValueForProperty("publish_server", mediaHost);
59 ent.setValueForProperty("size", size.toString());
61 } catch (StorageObjectException e) {
62 theLog.printError("StorageObjectException: "+e.toString());
66 theLog.printError("could not write FILE!");
77 public String getPublishHost()
79 return MirConfig.getProp("Producer.Media.Host");
84 public String getURL(Entity ent, Entity mediaTypeEnt)
86 int size = Integer.parseInt(ent.getValue("size"), 10)/1024;
87 String title = ent.getValue("title")+
88 " - "+mediaTypeEnt.getValue("name")+" "+
90 return StringUtil.createURLLinks(ent.getValue("publish_server")+"/"+
91 ent.getValue("publish_path"), title, imageRoot, getBigIcon());
95 private static String tinyIcon = MirConfig.getProp("Producer.Icon.TinyVideo");
96 private static String bigIcon = MirConfig.getProp("Producer.Icon.BigVideo");
98 public String getTinyIcon()
103 public String getBigIcon()
108 public String getIconAlt()
113 public boolean isVideo()