X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Fmedia%2FMediaHandlerImages.java;h=68073e300ef04fc2b9911048a48b8fd34415e630;hb=1ba06c565ec314b8e189a25e7aead8b3a4ce3ad5;hp=50952583353797193c30608b9e07b1fb97531bd9;hpb=a43304491d4492208e37c53449497a8a05731899;p=mir.git diff --git a/source/mircoders/media/MediaHandlerImages.java b/source/mircoders/media/MediaHandlerImages.java index 50952583..68073e30 100755 --- a/source/mircoders/media/MediaHandlerImages.java +++ b/source/mircoders/media/MediaHandlerImages.java @@ -32,18 +32,20 @@ package mircoders.media; -import java.lang.*; -import java.io.*; -import java.util.*; -import java.lang.reflect.*; - -import freemarker.template.SimpleList; - -import mir.media.*; -import mir.misc.*; -import mir.entity.*; -import mir.storage.StorageObjectException; +import java.io.File; +import java.io.InputStream; + +import mir.config.MirPropertiesConfiguration; +import mir.config.MirPropertiesConfiguration.PropertiesConfigExc; +import mir.entity.Entity; +import mir.log.LoggerWrapper; +import mir.media.MirMedia; +import mir.media.MirMediaException; +import mir.misc.FileUtil; +import mir.misc.StringUtil; +import mir.storage.StorageObjectFailure; import mircoders.entity.EntityImages; +import freemarker.template.SimpleList; /** * This class handles saving, fetching creating representations @@ -59,27 +61,42 @@ import mircoders.entity.EntityImages; * * @see mir.media.MirMedia * @author mh - * @version $Id: MediaHandlerImages.java,v 1.15 2002/12/17 19:20:31 zapata Exp $ + * @version $Id: MediaHandlerImages.java,v 1.19 2003/03/05 19:23:16 idfx Exp $ */ public abstract class MediaHandlerImages implements MirMedia { - static Logfile theLog = Logfile.getInstance(MirConfig.getProp("Home")+ - "log/media.log"); - static final String PNG = "PNG"; - static final String JPEG = "JPEG"; + protected static MirPropertiesConfiguration configuration; + protected static final String PNG = "PNG"; + protected static final String JPEG = "JPEG"; + + protected LoggerWrapper logger; + + static { + try { + configuration = MirPropertiesConfiguration.instance(); + } + catch (PropertiesConfigExc e) { + throw new RuntimeException("Can't get configuration: " + e.getMessage()); + } + } abstract String getType(); - public InputStream getMedia(Entity ent, Entity mediaTypeEnt) + public MediaHandlerImages() { + logger = new LoggerWrapper("Media.Images"); + } + + public InputStream getMedia(Entity ent, Entity mediaTypeEnt) throws MirMediaException { InputStream in; try { in = ((EntityImages)ent).getImage(); - } catch ( StorageObjectException e) { - theLog.printDebugInfo("MediaHandlerImages.getImage: "+e.toString()); + } + catch ( StorageObjectFailure e) { + logger.error("MediaHandlerImages.getImage: "+e.toString()); throw new MirMediaException(e.toString()); } @@ -92,9 +109,9 @@ public abstract class MediaHandlerImages implements MirMedia try { ((EntityImages)ent).setImage(in, getType()); } - catch ( StorageObjectException e) { - e.printStackTrace(System.out); - theLog.printError("MediaHandlerImages.set: "+e.getMessage()); + catch ( StorageObjectFailure e) { + logger.error("MediaHandlerImages.set: "+e.getMessage()); + e.printStackTrace(logger.asPrintWriter(LoggerWrapper.DEBUG_MESSAGE)); throw new MirMediaException(e.getMessage()); } } @@ -105,7 +122,7 @@ public abstract class MediaHandlerImages implements MirMedia String datePath = StringUtil.webdbDate2path(date); String ext = "."+mediaTypeEnt.getValue("name"); String filepath = datePath+ent.getId()+ext; - String iconFilePath = MirConfig.getProp("Producer.StorageRoot") + String iconFilePath = configuration.getString("Producer.StorageRoot") +getIconStoragePath() + filepath; String productionFilePath = getStoragePath() + File.separator + filepath; @@ -121,16 +138,15 @@ public abstract class MediaHandlerImages implements MirMedia ent.setValueForProperty("icon_path",getIconStoragePath()+filepath); ent.setValueForProperty("publish_path",filepath); ent.update(); - } catch ( Exception e) { - String msg = "MediaHandlerImages.produce - Error: " + e.toString(); - theLog.printError(msg); - throw new MirMediaException(msg); } - } else { - String msg="MediaHandlerImages.produce - missing image or icon OID for: "+ - ent.getId(); - theLog.printError(msg); - throw new MirMediaException(msg); + catch (Throwable e) { + logger.error("MediaHandlerImages.produce: " + e.toString()); + throw new MirMediaException("MediaHandlerImages.produce: " + e.toString()); + } + } + else { + logger.error("MediaHandlerImages.produce: missing image or icon OID for: " + ent.getId()); + throw new MirMediaException("MediaHandlerImages.produce: missing image or icon OID for: " + ent.getId()); } } @@ -140,8 +156,9 @@ public abstract class MediaHandlerImages implements MirMedia InputStream in; try { in = ((EntityImages)ent).getIcon(); - } catch ( StorageObjectException e) { - theLog.printDebugInfo("MediaHandlerImages.getIcon: "+e.toString()); + } + catch (Throwable e) { + logger.error("MediaHandlerImages.getIcon: " + e.toString()); throw new MirMediaException(e.toString()); } @@ -157,27 +174,27 @@ public abstract class MediaHandlerImages implements MirMedia public String getStoragePath() { - return MirConfig.getProp("Producer.Image.Path"); + return configuration.getString("Producer.Image.Path"); } public String getIconStoragePath() { - return MirConfig.getProp("Producer.Image.IconPath"); + return configuration.getString("Producer.Image.IconPath"); } public String getPublishHost() { - return StringUtil.removeSlash(MirConfig.getProp("Producer.Image.Host")); + return StringUtil.removeSlash(configuration.getString("Producer.Image.Host")); } public String getTinyIconName() { - return MirConfig.getProp("Producer.Icon.TinyImage"); + return configuration.getString("Producer.Icon.TinyImage"); } public String getBigIconName() { - return MirConfig.getProp("Producer.Icon.BigImage"); + return configuration.getString("Producer.Icon.BigImage"); } public String getIconAltName()