Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageParser.java URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageParser.java?rev=995859&r1=995858&r2=995859&view=diff ============================================================================== --- commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageParser.java (original) +++ commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageParser.java Fri Sep 10 16:33:35 2010 @@ -44,375 +44,375 @@ import org.apache.sanselan.formats.tiff. import org.apache.sanselan.util.Debug; public abstract class ImageParser extends BinaryFileParser implements - SanselanConstants + SanselanConstants { - public static final ImageParser[] getAllImageParsers() - { - ImageParser result[] = { new JpegImageParser(), new TiffImageParser(), - new PngImageParser(), new BmpImageParser(), - new GifImageParser(), new PsdImageParser(), - new PNMImageParser(), new IcoImageParser(), - // new JBig2ImageParser(), - // new TgaImageParser(), - }; - - return result; - } - - public final IImageMetadata getMetadata(ByteSource byteSource) - throws ImageReadException, IOException - { - return getMetadata(byteSource, null); - } - - public abstract IImageMetadata getMetadata(ByteSource byteSource, Map params) - throws ImageReadException, IOException; - - public final IImageMetadata getMetadata(byte bytes[]) - throws ImageReadException, IOException - { - return getMetadata(bytes); - } - - public final IImageMetadata getMetadata(byte bytes[], Map params) - throws ImageReadException, IOException - { - return getMetadata(new ByteSourceArray(bytes), params); - } - - public final IImageMetadata getMetadata(File file) - throws ImageReadException, IOException - { - return getMetadata(file, null); - } - - public final IImageMetadata getMetadata(File file, Map params) - throws ImageReadException, IOException - { - if (debug) - System.out.println(getName() + ".getMetadata" + ": " - + file.getName()); - - if (!canAcceptExtension(file)) - return null; - - return getMetadata(new ByteSourceFile(file), params); - } - - public abstract ImageInfo getImageInfo(ByteSource byteSource, Map params) - throws ImageReadException, IOException; - - public final ImageInfo getImageInfo(ByteSource byteSource) - throws ImageReadException, IOException - { - return getImageInfo(byteSource, null); - } - - public final ImageInfo getImageInfo(byte bytes[], Map params) - throws ImageReadException, IOException - { - return getImageInfo(new ByteSourceArray(bytes), params); - } - - public final ImageInfo getImageInfo(File file, Map params) - throws ImageReadException, IOException - { - if (!canAcceptExtension(file)) - return null; - - return getImageInfo(new ByteSourceFile(file), params); - } - - public FormatCompliance getFormatCompliance(ByteSource byteSource) - throws ImageReadException, IOException - { - return null; - } - - public final FormatCompliance getFormatCompliance(byte bytes[]) - throws ImageReadException, IOException - { - return getFormatCompliance(new ByteSourceArray(bytes)); - } - - public final FormatCompliance getFormatCompliance(File file) - throws ImageReadException, IOException - { - if (!canAcceptExtension(file)) - return null; - - return getFormatCompliance(new ByteSourceFile(file)); - } - - public ArrayList getAllBufferedImages(ByteSource byteSource) - throws ImageReadException, IOException - { - BufferedImage bi = getBufferedImage(byteSource, null); - - ArrayList result = new ArrayList(); - - result.add(bi); - - return result; - } - - public final ArrayList getAllBufferedImages(byte bytes[]) - throws ImageReadException, IOException - { - return getAllBufferedImages(new ByteSourceArray(bytes)); - } - - public final ArrayList getAllBufferedImages(File file) - throws ImageReadException, IOException - { - if (!canAcceptExtension(file)) - return null; - - return getAllBufferedImages(new ByteSourceFile(file)); - } - - // public boolean extractImages(ByteSource byteSource, File dstDir, - // String dstRoot, ImageParser encoder) throws ImageReadException, - // IOException, ImageWriteException - // { - // ArrayList v = getAllBufferedImages(byteSource); - // - // if (v == null) - // return false; - // - // for (int i = 0; i < v.size(); i++) - // { - // BufferedImage image = (BufferedImage) v.get(i); - // File file = new File(dstDir, dstRoot + "_" + i - // + encoder.getDefaultExtension()); - // encoder.writeImage(image, new FileOutputStream(file), null); - // } - // - // return false; - // } - // - // public final boolean extractImages(byte bytes[], File dstDir, - // String dstRoot, ImageParser encoder) - // - // throws ImageReadException, IOException, ImageWriteException - // { - // return extractImages(new ByteSourceArray(bytes), dstDir, dstRoot, - // encoder); - // } - // - // public final boolean extractImages(File file, File dstDir, - // String dstRoot, ImageParser encoder) - // - // throws ImageReadException, IOException, ImageWriteException - // { - // if (!canAcceptExtension(file)) - // return false; - // - // return extractImages(new ByteSourceFile(file), dstDir, dstRoot, - // encoder); - // } - - public abstract BufferedImage getBufferedImage(ByteSource byteSource, - Map params) throws ImageReadException, IOException; - - public final BufferedImage getBufferedImage(byte bytes[], Map params) - throws ImageReadException, IOException - { - return getBufferedImage(new ByteSourceArray(bytes), params); - } - - public final BufferedImage getBufferedImage(File file, Map params) - throws ImageReadException, IOException - { - if (!canAcceptExtension(file)) - return null; - - return getBufferedImage(new ByteSourceFile(file), params); - } - - public void writeImage(BufferedImage src, OutputStream os, Map params) - throws ImageWriteException, IOException - { - try - { - os.close(); // we are obligated to close stream. - } catch (Exception e) - { - Debug.debug(e); - } - - throw new ImageWriteException("This image format (" + getName() - + ") cannot be written."); - } - - public final Dimension getImageSize(byte bytes[]) - throws ImageReadException, IOException - { - return getImageSize(bytes, null); - } - - public final Dimension getImageSize(byte bytes[], Map params) - throws ImageReadException, IOException - { - return getImageSize(new ByteSourceArray(bytes), params); - } - - public final Dimension getImageSize(File file) throws ImageReadException, - IOException - { - - return getImageSize(file, null); - } - - public final Dimension getImageSize(File file, Map params) - throws ImageReadException, IOException - { - - if (!canAcceptExtension(file)) - return null; - - return getImageSize(new ByteSourceFile(file), params); - } - - public abstract Dimension getImageSize(ByteSource byteSource, Map params) - throws ImageReadException, IOException; - - public abstract String getXmpXml(ByteSource byteSource, Map params) - throws ImageReadException, IOException; - - public final byte[] getICCProfileBytes(byte bytes[]) - throws ImageReadException, IOException - { - return getICCProfileBytes(bytes, null); - } - - public final byte[] getICCProfileBytes(byte bytes[], Map params) - throws ImageReadException, IOException - { - return getICCProfileBytes(new ByteSourceArray(bytes), params); - } - - public final byte[] getICCProfileBytes(File file) - throws ImageReadException, IOException - { - return getICCProfileBytes(file, null); - } - - public final byte[] getICCProfileBytes(File file, Map params) - throws ImageReadException, IOException - { - if (!canAcceptExtension(file)) - return null; - - if (debug) - System.out.println(getName() + ": " + file.getName()); - - return getICCProfileBytes(new ByteSourceFile(file), params); - } - - public abstract byte[] getICCProfileBytes(ByteSource byteSource, Map params) - throws ImageReadException, IOException; - - public final String dumpImageFile(byte bytes[]) throws ImageReadException, - IOException - { - return dumpImageFile(new ByteSourceArray(bytes)); - } - - public final String dumpImageFile(File file) throws ImageReadException, - IOException - { - if (!canAcceptExtension(file)) - return null; - - if (debug) - System.out.println(getName() + ": " + file.getName()); - - return dumpImageFile(new ByteSourceFile(file)); - } - - public final String dumpImageFile(ByteSource byteSource) - throws ImageReadException, IOException - { - StringWriter sw = new StringWriter(); - PrintWriter pw = new PrintWriter(sw); - - dumpImageFile(pw, byteSource); - - pw.flush(); - - return sw.toString(); - } - - public boolean dumpImageFile(PrintWriter pw, ByteSource byteSource) - throws ImageReadException, IOException - { - return false; - } - - public abstract boolean embedICCProfile(File src, File dst, byte profile[]); - - public abstract String getName(); - - public abstract String getDefaultExtension(); - - protected abstract String[] getAcceptedExtensions(); - - protected abstract ImageFormat[] getAcceptedTypes(); - - public boolean canAcceptType(ImageFormat type) - { - ImageFormat types[] = getAcceptedTypes(); - - for (int i = 0; i < types.length; i++) - if (types[i].equals(type)) - return true; - return false; - } - - protected final boolean canAcceptExtension(File file) - { - return canAcceptExtension(file.getName()); - } - - protected final boolean canAcceptExtension(String filename) - { - String exts[] = getAcceptedExtensions(); - if (exts == null) - return true; - - int index = filename.lastIndexOf('.'); - if (index >= 0) - { - String ext = filename.substring(index); - ext = ext.toLowerCase(); - - for (int i = 0; i < exts.length; i++) - if (exts[i].toLowerCase().equals(ext)) - return true; - } - return false; - } - - protected IBufferedImageFactory getBufferedImageFactory(Map params) - { - if (params == null) - return new SimpleBufferedImageFactory(); - - IBufferedImageFactory result = (IBufferedImageFactory) params - .get(SanselanConstants.BUFFERED_IMAGE_FACTORY); - - if (null != result) - return result; - - return new SimpleBufferedImageFactory(); - } - - public static final boolean isStrict(Map params) - { - if (params == null || !params.containsKey(PARAM_KEY_STRICT)) - return false; - return ((Boolean) params.get(PARAM_KEY_STRICT)).booleanValue(); - } + public static final ImageParser[] getAllImageParsers() + { + ImageParser result[] = { new JpegImageParser(), new TiffImageParser(), + new PngImageParser(), new BmpImageParser(), + new GifImageParser(), new PsdImageParser(), + new PNMImageParser(), new IcoImageParser(), + // new JBig2ImageParser(), + // new TgaImageParser(), + }; + + return result; + } + + public final IImageMetadata getMetadata(ByteSource byteSource) + throws ImageReadException, IOException + { + return getMetadata(byteSource, null); + } + + public abstract IImageMetadata getMetadata(ByteSource byteSource, Map params) + throws ImageReadException, IOException; + + public final IImageMetadata getMetadata(byte bytes[]) + throws ImageReadException, IOException + { + return getMetadata(bytes); + } + + public final IImageMetadata getMetadata(byte bytes[], Map params) + throws ImageReadException, IOException + { + return getMetadata(new ByteSourceArray(bytes), params); + } + + public final IImageMetadata getMetadata(File file) + throws ImageReadException, IOException + { + return getMetadata(file, null); + } + + public final IImageMetadata getMetadata(File file, Map params) + throws ImageReadException, IOException + { + if (debug) + System.out.println(getName() + ".getMetadata" + ": " + + file.getName()); + + if (!canAcceptExtension(file)) + return null; + + return getMetadata(new ByteSourceFile(file), params); + } + + public abstract ImageInfo getImageInfo(ByteSource byteSource, Map params) + throws ImageReadException, IOException; + + public final ImageInfo getImageInfo(ByteSource byteSource) + throws ImageReadException, IOException + { + return getImageInfo(byteSource, null); + } + + public final ImageInfo getImageInfo(byte bytes[], Map params) + throws ImageReadException, IOException + { + return getImageInfo(new ByteSourceArray(bytes), params); + } + + public final ImageInfo getImageInfo(File file, Map params) + throws ImageReadException, IOException + { + if (!canAcceptExtension(file)) + return null; + + return getImageInfo(new ByteSourceFile(file), params); + } + + public FormatCompliance getFormatCompliance(ByteSource byteSource) + throws ImageReadException, IOException + { + return null; + } + + public final FormatCompliance getFormatCompliance(byte bytes[]) + throws ImageReadException, IOException + { + return getFormatCompliance(new ByteSourceArray(bytes)); + } + + public final FormatCompliance getFormatCompliance(File file) + throws ImageReadException, IOException + { + if (!canAcceptExtension(file)) + return null; + + return getFormatCompliance(new ByteSourceFile(file)); + } + + public ArrayList getAllBufferedImages(ByteSource byteSource) + throws ImageReadException, IOException + { + BufferedImage bi = getBufferedImage(byteSource, null); + + ArrayList result = new ArrayList(); + + result.add(bi); + + return result; + } + + public final ArrayList getAllBufferedImages(byte bytes[]) + throws ImageReadException, IOException + { + return getAllBufferedImages(new ByteSourceArray(bytes)); + } + + public final ArrayList getAllBufferedImages(File file) + throws ImageReadException, IOException + { + if (!canAcceptExtension(file)) + return null; + + return getAllBufferedImages(new ByteSourceFile(file)); + } + + // public boolean extractImages(ByteSource byteSource, File dstDir, + // String dstRoot, ImageParser encoder) throws ImageReadException, + // IOException, ImageWriteException + // { + // ArrayList v = getAllBufferedImages(byteSource); + // + // if (v == null) + // return false; + // + // for (int i = 0; i < v.size(); i++) + // { + // BufferedImage image = (BufferedImage) v.get(i); + // File file = new File(dstDir, dstRoot + "_" + i + // + encoder.getDefaultExtension()); + // encoder.writeImage(image, new FileOutputStream(file), null); + // } + // + // return false; + // } + // + // public final boolean extractImages(byte bytes[], File dstDir, + // String dstRoot, ImageParser encoder) + // + // throws ImageReadException, IOException, ImageWriteException + // { + // return extractImages(new ByteSourceArray(bytes), dstDir, dstRoot, + // encoder); + // } + // + // public final boolean extractImages(File file, File dstDir, + // String dstRoot, ImageParser encoder) + // + // throws ImageReadException, IOException, ImageWriteException + // { + // if (!canAcceptExtension(file)) + // return false; + // + // return extractImages(new ByteSourceFile(file), dstDir, dstRoot, + // encoder); + // } + + public abstract BufferedImage getBufferedImage(ByteSource byteSource, + Map params) throws ImageReadException, IOException; + + public final BufferedImage getBufferedImage(byte bytes[], Map params) + throws ImageReadException, IOException + { + return getBufferedImage(new ByteSourceArray(bytes), params); + } + + public final BufferedImage getBufferedImage(File file, Map params) + throws ImageReadException, IOException + { + if (!canAcceptExtension(file)) + return null; + + return getBufferedImage(new ByteSourceFile(file), params); + } + + public void writeImage(BufferedImage src, OutputStream os, Map params) + throws ImageWriteException, IOException + { + try + { + os.close(); // we are obligated to close stream. + } catch (Exception e) + { + Debug.debug(e); + } + + throw new ImageWriteException("This image format (" + getName() + + ") cannot be written."); + } + + public final Dimension getImageSize(byte bytes[]) + throws ImageReadException, IOException + { + return getImageSize(bytes, null); + } + + public final Dimension getImageSize(byte bytes[], Map params) + throws ImageReadException, IOException + { + return getImageSize(new ByteSourceArray(bytes), params); + } + + public final Dimension getImageSize(File file) throws ImageReadException, + IOException + { + + return getImageSize(file, null); + } + + public final Dimension getImageSize(File file, Map params) + throws ImageReadException, IOException + { + + if (!canAcceptExtension(file)) + return null; + + return getImageSize(new ByteSourceFile(file), params); + } + + public abstract Dimension getImageSize(ByteSource byteSource, Map params) + throws ImageReadException, IOException; + + public abstract String getXmpXml(ByteSource byteSource, Map params) + throws ImageReadException, IOException; + + public final byte[] getICCProfileBytes(byte bytes[]) + throws ImageReadException, IOException + { + return getICCProfileBytes(bytes, null); + } + + public final byte[] getICCProfileBytes(byte bytes[], Map params) + throws ImageReadException, IOException + { + return getICCProfileBytes(new ByteSourceArray(bytes), params); + } + + public final byte[] getICCProfileBytes(File file) + throws ImageReadException, IOException + { + return getICCProfileBytes(file, null); + } + + public final byte[] getICCProfileBytes(File file, Map params) + throws ImageReadException, IOException + { + if (!canAcceptExtension(file)) + return null; + + if (debug) + System.out.println(getName() + ": " + file.getName()); + + return getICCProfileBytes(new ByteSourceFile(file), params); + } + + public abstract byte[] getICCProfileBytes(ByteSource byteSource, Map params) + throws ImageReadException, IOException; + + public final String dumpImageFile(byte bytes[]) throws ImageReadException, + IOException + { + return dumpImageFile(new ByteSourceArray(bytes)); + } + + public final String dumpImageFile(File file) throws ImageReadException, + IOException + { + if (!canAcceptExtension(file)) + return null; + + if (debug) + System.out.println(getName() + ": " + file.getName()); + + return dumpImageFile(new ByteSourceFile(file)); + } + + public final String dumpImageFile(ByteSource byteSource) + throws ImageReadException, IOException + { + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + + dumpImageFile(pw, byteSource); + + pw.flush(); + + return sw.toString(); + } + + public boolean dumpImageFile(PrintWriter pw, ByteSource byteSource) + throws ImageReadException, IOException + { + return false; + } + + public abstract boolean embedICCProfile(File src, File dst, byte profile[]); + + public abstract String getName(); + + public abstract String getDefaultExtension(); + + protected abstract String[] getAcceptedExtensions(); + + protected abstract ImageFormat[] getAcceptedTypes(); + + public boolean canAcceptType(ImageFormat type) + { + ImageFormat types[] = getAcceptedTypes(); + + for (int i = 0; i < types.length; i++) + if (types[i].equals(type)) + return true; + return false; + } + + protected final boolean canAcceptExtension(File file) + { + return canAcceptExtension(file.getName()); + } + + protected final boolean canAcceptExtension(String filename) + { + String exts[] = getAcceptedExtensions(); + if (exts == null) + return true; + + int index = filename.lastIndexOf('.'); + if (index >= 0) + { + String ext = filename.substring(index); + ext = ext.toLowerCase(); + + for (int i = 0; i < exts.length; i++) + if (exts[i].toLowerCase().equals(ext)) + return true; + } + return false; + } + + protected IBufferedImageFactory getBufferedImageFactory(Map params) + { + if (params == null) + return new SimpleBufferedImageFactory(); + + IBufferedImageFactory result = (IBufferedImageFactory) params + .get(SanselanConstants.BUFFERED_IMAGE_FACTORY); + + if (null != result) + return result; + + return new SimpleBufferedImageFactory(); + } + + public static final boolean isStrict(Map params) + { + if (params == null || !params.containsKey(PARAM_KEY_STRICT)) + return false; + return ((Boolean) params.get(PARAM_KEY_STRICT)).booleanValue(); + } } \ No newline at end of file
Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageReadException.java URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageReadException.java?rev=995859&r1=995858&r2=995859&view=diff ============================================================================== --- commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageReadException.java (original) +++ commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageReadException.java Fri Sep 10 16:33:35 2010 @@ -18,15 +18,15 @@ package org.apache.sanselan; public class ImageReadException extends SanselanException { - static final long serialVersionUID = -1L; + static final long serialVersionUID = -1L; - public ImageReadException(String s) - { - super(s); - } + public ImageReadException(String s) + { + super(s); + } - public ImageReadException(String s, Exception e) - { - super(s, e); - } + public ImageReadException(String s, Exception e) + { + super(s, e); + } } \ No newline at end of file Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageWriteException.java URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageWriteException.java?rev=995859&r1=995858&r2=995859&view=diff ============================================================================== --- commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageWriteException.java (original) +++ commons/proper/sanselan/trunk/src/main/java/org/apache/sanselan/ImageWriteException.java Fri Sep 10 16:33:35 2010 @@ -18,15 +18,15 @@ package org.apache.sanselan; public class ImageWriteException extends SanselanException { - static final long serialVersionUID = -1L; + static final long serialVersionUID = -1L; - public ImageWriteException(String s) - { - super(s); - } + public ImageWriteException(String s) + { + super(s); + } - public ImageWriteException(String s, Exception e) - { - super(s, e); - } + public ImageWriteException(String s, Exception e) + { + super(s, e); + } } \ No newline at end of file