import java.io.File;
import java.io.InputStream;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.util.List;
import java.util.Vector;
+import java.util.ArrayList;
import mir.config.MirPropertiesConfiguration;
-import mir.config.MirPropertiesConfiguration.PropertiesConfigExc;
import mir.entity.Entity;
import mir.log.LoggerWrapper;
import mir.media.MediaExc;
import mir.media.MediaHandler;
import mir.misc.FileUtil;
import mir.misc.StringUtil;
+import mir.session.UploadedFile;
+import mir.session.SessionExc;
import mircoders.entity.EntityImages;
/**
* representation stuff (WebdbImage) happen here.
* -mh 01.03.2002
*
- * @see mir.media.MirMediaHandler
+ * @see mir.media.MediaHandler
* @author mh
- * @version $Id: MediaHandlerImages.java,v 1.23.2.4 2004/01/18 17:30:58 zapata Exp $
+ * @version $Id: MediaHandlerImages.java,v 1.23.2.5 2004/11/21 22:07:14 zapata Exp $
*/
-public abstract class MediaHandlerImages implements MediaHandler
-{
- protected static MirPropertiesConfiguration configuration;
+public abstract class MediaHandlerImages extends AbstractMediaHandler implements MediaHandler {
+ protected static MirPropertiesConfiguration configuration = MirPropertiesConfiguration.instance();
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 MediaHandlerImages() {
return inputStream;
}
- public void store(InputStream in, Entity ent, Entity mediaTypeEnt) throws MediaExc, MediaFailure {
+ public void store(UploadedFile anUploadedFile, Entity aMedia, Entity aMediaType) throws MediaExc, MediaFailure {
+ try {
+ store(anUploadedFile.getInputStream(), aMedia, aMediaType);
+ }
+ catch (SessionExc e) {
+ throw new MediaFailure(e);
+ }
+ }
+ public void store(InputStream in, Entity ent, Entity mediaTypeEnt) throws MediaExc, MediaFailure {
try {
- ((EntityImages)ent).setImage(in, getType());
+ ((EntityImages) ent).setImage(in, getType());
}
catch (Throwable e) {
- logger.error("MediaHandlerImages.set: "+e.getMessage());
- e.printStackTrace(logger.asPrintWriter(LoggerWrapper.DEBUG_MESSAGE));
+ logger.error("MediaHandlerImages.store: "+e.toString());
+ e.printStackTrace(logger.asPrintWriter(LoggerWrapper.ERROR_MESSAGE));
+ throw new MediaExc("A problem has occurred processing the media file: " + e.toString());
+ }
+ }
+
+ public void store(File aFile, Entity aMedia, Entity aMediaType) throws MediaExc, MediaFailure {
+ try {
+ store(new FileInputStream(aFile), aMedia, aMediaType);
+ }
+ catch (FileNotFoundException e) {
throw new MediaFailure(e);
}
}
ent.getFieldValue("image_data")!= null) {
// make icon
try {
- InputStream in = ((EntityImages)ent).getIcon();
+ InputStream in = ((EntityImages) ent).getIcon();
FileUtil.write(iconFilePath, in);
in = ((EntityImages)ent).getImage();
FileUtil.write(productionFilePath, in);
}
}
-
public InputStream getThumbnail(Entity ent) throws MediaExc, MediaFailure {
InputStream in;
try {
- in = ((EntityImages)ent).getIcon();
+ in = ((EntityImages) ent).getIcon();
}
catch (Throwable e) {
logger.error("MediaHandlerImages.getIcon: " + e.toString());
return in;
}
- public List getURL(Entity ent, Entity mediaTypeEnt) {
- List theList = new Vector();
- theList.add(ent);
- return theList;
- }
-
- public String getStoragePath() {
+ public String getStoragePath() {
return configuration.getString("Producer.Image.Path");
}
public String getIconAltName() {
return "Image";
}
+
public String getDescr(Entity mediaType) {
return "image/jpeg";
}