-
- public String getValue(String key) {
- String returnValue = null;
-
- if (key != null) {
- if (key.equals("big_icon"))
- returnValue = getBigIconName();
- else if (key.equals("descr") || key.equals("media_descr"))
- returnValue = getDescr();
- else if (key.equals("mediatype"))
- returnValue = getMediaTypeString();
- else if (key.equals("mimetype"))
- returnValue = getMimeType();
- else if (key.equals("human_readable_size")) {
- String size = super.getValue("size");
- if (size != null)
- returnValue = NumberUtils.humanReadableSize(Double.parseDouble(size));
- }
- else
- returnValue = super.getValue(key);
- }
- return returnValue;
- }
-
- public TemplateModel get(java.lang.String key) throws TemplateModelException {
- if (key.equals("url"))
- return getUrl();
- return new SimpleScalar(getValue(key));
- }
-
- // @todo all these methods should be merged into 1
- // and the MediaHandler should be cached somehow.
- private String getMediaTypeString() {
- MirMedia mediaHandler = null;
- Entity mediaType = null;
-
- try {
- mediaType = getMediaType();
- mediaHandler = MediaHelper.getHandler(mediaType);
- String t;
- if (mediaHandler.isAudio())
- return "audio";
- else if (mediaHandler.isImage())
- return "image";
- else if (mediaHandler.isVideo())
- return "video";
- else
- return "other";
- }
- catch (Exception ex) {
- logger.warn("EntityUploadedMedia.getMediaTypeString: could not fetch data: " + ex.toString());
- }
- return null;
- }
-
- private String getBigIconName() {
- MirMedia mediaHandler = null;
- Entity mediaType = null;
-
- try {
- mediaType = getMediaType();
- mediaHandler = MediaHelper.getHandler(mediaType);
- return mediaHandler.getBigIconName();
- }
- catch (Exception ex) {
- logger.warn("EntityUploadedMedia.getBigIconName: could not fetch data: " + ex.toString());
- }
- return null;
- }
-
- private SimpleList getUrl() {
- MirMedia mediaHandler = null;
- Entity mediaType = null;
-
- try {
- mediaType = getMediaType();
- mediaHandler = MediaHelper.getHandler(mediaType);
- return mediaHandler.getURL(this, mediaType);
- }
- catch (Throwable t) {
- logger.warn("EntityUploadedMedia.getUrl: could not fetch data: " + t.toString());
- }
- return null;
- }
-
- private String getDescr() {
- MirMedia mediaHandler = null;
- Entity mediaType = null;
-
- try {
- mediaType = getMediaType();
- mediaHandler = MediaHelper.getHandler(mediaType);
- return mediaHandler.getDescr(mediaType);
- }
- catch (Exception ex) {
- logger.warn("EntityUploadedMedia.getDescr: could not fetch data: " + ex.toString());
- }
- return null;
- }
- private String getMimeType() {
- Entity mediaType = null;
-
- try {
- mediaType = getMediaType();
- return mediaType.getValue("mime_type");
- }
- catch (Exception ex) {
- logger.warn("EntityUploadedMedia.getBigIconName: could not fetch data: " + ex.toString());
- }
- return null;
- }
-