Author: damjan Date: Sat Mar 17 09:53:14 2012 New Revision: 1301904 URL: http://svn.apache.org/viewvc?rev=1301904&view=rev Log: Eliminate the byte order parameter.
Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java?rev=1301904&r1=1301903&r2=1301904&view=diff ============================================================================== --- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java (original) +++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java Sat Mar 17 09:53:14 2012 @@ -123,12 +123,4 @@ public interface SanselanConstants * Valid values: PixelDensity */ public static final String PARAM_KEY_PIXEL_DENSITY = "PIXEL_DENSITY"; - - /** - * Parameter key. Used in Tiff operations to use the byte order - * of the Tiff image. - * <p> - * Valid values: any Integer - */ - public static final String BYTE_ORDER = "BYTE_ORDER"; } Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java?rev=1301904&r1=1301903&r2=1301904&view=diff ============================================================================== --- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java (original) +++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java Sat Mar 17 09:53:14 2012 @@ -152,19 +152,19 @@ public class TiffDirectory extends TiffE return false; } - public BufferedImage getTiffImage() throws ImageReadException, IOException + public BufferedImage getTiffImage(int byteOrder) throws ImageReadException, IOException { Map params = null; - return getTiffImage(params); + return getTiffImage(byteOrder, params); } - public BufferedImage getTiffImage(Map params) throws ImageReadException, + public BufferedImage getTiffImage(int byteOrder, Map params) throws ImageReadException, IOException { if (null == tiffImageData) return null; - return new TiffImageParser().getBufferedImage(this, params); + return new TiffImageParser().getBufferedImage(this, byteOrder, params); } public TiffField findField(TagInfo tag) throws ImageReadException Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java?rev=1301904&r1=1301903&r2=1301904&view=diff ============================================================================== --- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java (original) +++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java Sat Mar 17 09:53:14 2012 @@ -87,11 +87,13 @@ public class TiffImageMetadata extends I public final int type; private final TiffDirectory directory; + private final int byteOrder; - public Directory(final TiffDirectory directory) + public Directory(int byteOrder, final TiffDirectory directory) { this.type = directory.type; this.directory = directory; + this.byteOrder = byteOrder; } public void add(TiffField entry) @@ -102,7 +104,7 @@ public class TiffImageMetadata extends I public BufferedImage getThumbnail() throws ImageReadException, IOException { - return directory.getTiffImage(); + return directory.getTiffImage(byteOrder); } public TiffImageData getTiffImageData() Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java?rev=1301904&r1=1301903&r2=1301904&view=diff ============================================================================== --- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java (original) +++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java Sat Mar 17 09:53:14 2012 @@ -130,7 +130,8 @@ public class TiffImageParser extends Ima throws ImageReadException, IOException { FormatCompliance formatCompliance = FormatCompliance.getDefault(); - TiffContents contents = new TiffReader(isStrict(params)).readContents( + TiffReader tiffReader = new TiffReader(isStrict(params)); + TiffContents contents = tiffReader.readContents( byteSource, params, formatCompliance); List<TiffDirectory> directories = contents.directories; @@ -141,7 +142,7 @@ public class TiffImageParser extends Ima { TiffDirectory dir = directories.get(i); - TiffImageMetadata.Directory metadataDirectory = new TiffImageMetadata.Directory(dir); + TiffImageMetadata.Directory metadataDirectory = new TiffImageMetadata.Directory(tiffReader.getByteOrder(), dir); List<TiffField> entries = dir.getDirectoryEntrys(); @@ -446,11 +447,7 @@ public class TiffImageParser extends Ima int byteOrder = reader.getByteOrder(); TiffContents contents = reader.readFirstDirectory(byteSource, params, true, formatCompliance); TiffDirectory directory = contents.directories.get(0); - if(params == null) { - params = new HashMap<String, Integer>(); - } - params.put(BYTE_ORDER, byteOrder); - BufferedImage result = directory.getTiffImage(params); + BufferedImage result = directory.getTiffImage(byteOrder, params); if (null == result) throw new ImageReadException("TIFF does not contain an image."); return result; @@ -460,12 +457,13 @@ public class TiffImageParser extends Ima throws ImageReadException, IOException { FormatCompliance formatCompliance = FormatCompliance.getDefault(); - TiffContents contents = new TiffReader(true).readDirectories(byteSource, true, formatCompliance); + TiffReader tiffReader = new TiffReader(true); + TiffContents contents = tiffReader.readDirectories(byteSource, true, formatCompliance); List<BufferedImage> results = new ArrayList<BufferedImage>(); for (int i = 0; i < contents.directories.size(); i++) { TiffDirectory directory = contents.directories.get(i); - BufferedImage result = directory.getTiffImage(null); + BufferedImage result = directory.getTiffImage(tiffReader.getByteOrder(), null); if (result != null) { results.add(result); @@ -474,21 +472,11 @@ public class TiffImageParser extends Ima return results; } - protected BufferedImage getBufferedImage(TiffDirectory directory, Map params) + protected BufferedImage getBufferedImage(TiffDirectory directory, int byteOrder, Map params) throws ImageReadException, IOException { List<TiffField> entries = directory.entries; - int byteOrder = BYTE_ORDER_LITTLE_ENDIAN; //taking little endian to be default - if(params != null){ - if(params.containsKey(BYTE_ORDER)) { - Object obj = params.get(BYTE_ORDER); - if(obj instanceof Integer) { - Integer a = (Integer)obj; - byteOrder = a.intValue(); - } - } - } if (entries == null) throw new ImageReadException("TIFF missing entries");