diff servlet/src/digilib/io/ImageFile.java @ 590:69bc69381ac4 stream

more work on stream input and more cleanup
author robcast
date Thu, 06 Jan 2011 20:42:29 +0100
parents aee436f0549d
children 2b58d2783ef0
line wrap: on
line diff
--- a/servlet/src/digilib/io/ImageFile.java	Thu Jan 06 17:33:01 2011 +0100
+++ b/servlet/src/digilib/io/ImageFile.java	Thu Jan 06 20:42:29 2011 +0100
@@ -22,7 +22,12 @@
 package digilib.io;
 
 import java.io.File;
+import java.io.FileNotFoundException;
 import java.io.IOException;
+import java.io.RandomAccessFile;
+
+import javax.imageio.stream.FileImageInputStream;
+import javax.imageio.stream.ImageInputStream;
 
 import digilib.image.ImageSize;
 import digilib.servlet.DigilibConfiguration;
@@ -114,8 +119,39 @@
 		return name;
 	}
 
-	/**
-	 * @return File
+	
+	/* (non-Javadoc)
+     * @see digilib.io.ImageInput#hasImageInputStream()
+     */
+    @Override
+    public boolean hasImageInputStream() {
+        return true;
+    }
+
+    /* (non-Javadoc)
+     * @see digilib.io.ImageInput#getImageInputStream()
+     */
+    @Override
+    public ImageInputStream getImageInputStream() {
+        try {
+            RandomAccessFile rf = new RandomAccessFile(file, "r");
+            return new FileImageInputStream(rf);
+        } catch (IOException e) {
+            // what now?
+        }
+        return null;
+    }
+
+    /* (non-Javadoc)
+     * @see digilib.io.ImageInput#hasFile()
+     */
+    @Override
+    public boolean hasFile() {
+        return true;
+    }
+
+    /* (non-Javadoc)
+	 * @see digilib.io.ImageInput#getFile()
 	 */
 	public File getFile() {
 		return file;