You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2012/12/04 18:24:32 UTC

svn commit: r1417043 [13/21] - in /commons/proper/imaging/trunk/src: main/java/org/apache/commons/imaging/ main/java/org/apache/commons/imaging/color/ main/java/org/apache/commons/imaging/common/ main/java/org/apache/commons/imaging/common/bytesource/ ...

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java?rev=1417043&r1=1417042&r2=1417043&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java Tue Dec  4 17:23:16 2012
@@ -60,13 +60,13 @@ public class TiffImageMetadata extends I
         this.contents = contents;
     }
 
-    private static final Map<Object, Integer> countTags(List<TagInfo> tags) {
-        Map<Object, Integer> map = new Hashtable<Object, Integer>();
+    private static final Map<Object, Integer> countTags(final List<TagInfo> tags) {
+        final Map<Object, Integer> map = new Hashtable<Object, Integer>();
 
         for (int i = 0; i < tags.size(); i++) {
-            TagInfo tag = tags.get(i);
+            final TagInfo tag = tags.get(i);
 
-            Integer count = map.get(tag.tag);
+            final Integer count = map.get(tag.tag);
             if (count == null) {
                 map.put(tag.tag, 1);
             } else {
@@ -86,13 +86,13 @@ public class TiffImageMetadata extends I
         private final TiffDirectory directory;
         private final ByteOrder byteOrder;
 
-        public Directory(ByteOrder byteOrder, final TiffDirectory directory) {
+        public Directory(final ByteOrder byteOrder, final TiffDirectory directory) {
             this.type = directory.type;
             this.directory = directory;
             this.byteOrder = byteOrder;
         }
 
-        public void add(TiffField entry) {
+        public void add(final TiffField entry) {
             add(new TiffImageMetadata.Item(entry));
         }
 
@@ -105,7 +105,7 @@ public class TiffImageMetadata extends I
             return directory.getTiffImageData();
         }
 
-        public TiffField findField(TagInfo tagInfo) throws ImageReadException {
+        public TiffField findField(final TagInfo tagInfo) throws ImageReadException {
             return directory.findField(tagInfo);
         }
 
@@ -118,7 +118,7 @@ public class TiffImageMetadata extends I
         }
 
         @Override
-        public String toString(String prefix) {
+        public String toString(final String prefix) {
             return (prefix != null ? prefix : "") + directory.description()
                     + ": " //
                     + (getTiffImageData() != null ? " (tiffImageData)" : "") //
@@ -126,17 +126,17 @@ public class TiffImageMetadata extends I
                     + "\n" + super.toString(prefix) + "\n";
         }
 
-        public TiffOutputDirectory getOutputDirectory(ByteOrder byteOrder)
+        public TiffOutputDirectory getOutputDirectory(final ByteOrder byteOrder)
                 throws ImageWriteException {
             try {
-                TiffOutputDirectory dstDir = new TiffOutputDirectory(type,
+                final TiffOutputDirectory dstDir = new TiffOutputDirectory(type,
                         byteOrder);
 
-                List<? extends IImageMetadataItem> entries = getItems();
+                final List<? extends IImageMetadataItem> entries = getItems();
                 for (int i = 0; i < entries.size(); i++) {
-                    TiffImageMetadata.Item item = (TiffImageMetadata.Item) entries
+                    final TiffImageMetadata.Item item = (TiffImageMetadata.Item) entries
                             .get(i);
-                    TiffField srcField = item.getTiffField();
+                    final TiffField srcField = item.getTiffField();
 
                     if (null != dstDir.findField(srcField.tag)) {
                         // ignore duplicate tags in a directory.
@@ -146,17 +146,17 @@ public class TiffImageMetadata extends I
                         continue;
                     }
 
-                    TagInfo tagInfo = srcField.tagInfo;
-                    FieldType fieldType = srcField.fieldType;
+                    final TagInfo tagInfo = srcField.tagInfo;
+                    final FieldType fieldType = srcField.fieldType;
                     // byte bytes[] = srcField.fieldType.getRawBytes(srcField);
 
                     // Debug.debug("tagInfo", tagInfo);
 
-                    Object value = srcField.getValue();
+                    final Object value = srcField.getValue();
 
                     // Debug.debug("value", Debug.getType(value));
 
-                    byte bytes[] = tagInfo.encodeValue(fieldType, value,
+                    final byte bytes[] = tagInfo.encodeValue(fieldType, value,
                             byteOrder);
 
                     // if (tagInfo.isUnknown())
@@ -165,8 +165,8 @@ public class TiffImageMetadata extends I
                     // + Integer.toHexString(srcField.tag)
                     // + ") bytes", bytes);
 
-                    int count = bytes.length / fieldType.length;
-                    TiffOutputField dstField = new TiffOutputField(
+                    final int count = bytes.length / fieldType.length;
+                    final TiffOutputField dstField = new TiffOutputField(
                             srcField.tag, tagInfo, fieldType, count, bytes);
                     dstField.setSortHint(srcField.getSortHint());
                     dstDir.add(dstField);
@@ -176,7 +176,7 @@ public class TiffImageMetadata extends I
                 dstDir.setJpegImageData(getJpegImageData());
 
                 return dstDir;
-            } catch (ImageReadException e) {
+            } catch (final ImageReadException e) {
                 throw new ImageWriteException(e.getMessage(), e);
             }
         }
@@ -189,11 +189,11 @@ public class TiffImageMetadata extends I
 
     @Override
     public List<? extends IImageMetadataItem> getItems() {
-        List<IImageMetadataItem> result = new ArrayList<IImageMetadataItem>();
+        final List<IImageMetadataItem> result = new ArrayList<IImageMetadataItem>();
 
-        List<? extends IImageMetadataItem> items = super.getItems();
+        final List<? extends IImageMetadataItem> items = super.getItems();
         for (int i = 0; i < items.size(); i++) {
-            Directory dir = (Directory) items.get(i);
+            final Directory dir = (Directory) items.get(i);
             result.addAll(dir.getItems());
         }
 
@@ -203,7 +203,7 @@ public class TiffImageMetadata extends I
     public static class Item extends ImageMetadata.Item {
         private final TiffField entry;
 
-        public Item(TiffField entry) {
+        public Item(final TiffField entry) {
             // super(entry.getTagName() + " (" + entry.getFieldTypeName() + ")",
             super(entry.getTagName(), entry.getValueDescription());
             this.entry = entry;
@@ -216,12 +216,12 @@ public class TiffImageMetadata extends I
     }
 
     public TiffOutputSet getOutputSet() throws ImageWriteException {
-        ByteOrder byteOrder = contents.header.byteOrder;
-        TiffOutputSet result = new TiffOutputSet(byteOrder);
+        final ByteOrder byteOrder = contents.header.byteOrder;
+        final TiffOutputSet result = new TiffOutputSet(byteOrder);
 
-        List<? extends IImageMetadataItem> srcDirs = getDirectories();
+        final List<? extends IImageMetadataItem> srcDirs = getDirectories();
         for (int i = 0; i < srcDirs.size(); i++) {
-            TiffImageMetadata.Directory srcDir = (TiffImageMetadata.Directory) srcDirs
+            final TiffImageMetadata.Directory srcDir = (TiffImageMetadata.Directory) srcDirs
                     .get(i);
 
             if (null != result.findDirectory(srcDir.type)) {
@@ -231,7 +231,7 @@ public class TiffImageMetadata extends I
                 continue;
             }
 
-            TiffOutputDirectory outputDirectory = srcDir
+            final TiffOutputDirectory outputDirectory = srcDir
                     .getOutputDirectory(byteOrder);
             result.addDirectory(outputDirectory);
         }
@@ -239,23 +239,23 @@ public class TiffImageMetadata extends I
         return result;
     }
 
-    public TiffField findField(TagInfo tagInfo) throws ImageReadException {
+    public TiffField findField(final TagInfo tagInfo) throws ImageReadException {
         return findField(tagInfo, false);
     }
 
-    public TiffField findField(TagInfo tagInfo, boolean exactDirectoryMatch)
+    public TiffField findField(final TagInfo tagInfo, final boolean exactDirectoryMatch)
             throws ImageReadException {
         // Please keep this method in sync with TiffField's getTag()
-        Integer tagCount = tagCounts.get(tagInfo.tag);
-        int tagsMatching = tagCount == null ? 0 : tagCount.intValue();
+        final Integer tagCount = tagCounts.get(tagInfo.tag);
+        final int tagsMatching = tagCount == null ? 0 : tagCount.intValue();
 
-        List<? extends IImageMetadataItem> directories = getDirectories();
+        final List<? extends IImageMetadataItem> directories = getDirectories();
         if (exactDirectoryMatch
                 || tagInfo.directoryType != TiffDirectoryType.EXIF_DIRECTORY_UNKNOWN) {
             for (int i = 0; i < directories.size(); i++) {
-                Directory directory = (Directory) directories.get(i);
+                final Directory directory = (Directory) directories.get(i);
                 if (directory.type == tagInfo.directoryType.directoryType) {
-                    TiffField field = directory.findField(tagInfo);
+                    final TiffField field = directory.findField(tagInfo);
                     if (field != null) {
                         return field;
                     }
@@ -265,16 +265,16 @@ public class TiffImageMetadata extends I
                 return null;
             }
             for (int i = 0; i < directories.size(); i++) {
-                Directory directory = (Directory) directories.get(i);
+                final Directory directory = (Directory) directories.get(i);
                 if (tagInfo.directoryType.isImageDirectory()
                         && directory.type >= 0) {
-                    TiffField field = directory.findField(tagInfo);
+                    final TiffField field = directory.findField(tagInfo);
                     if (field != null) {
                         return field;
                     }
                 } else if (!tagInfo.directoryType.isImageDirectory()
                         && directory.type < 0) {
-                    TiffField field = directory.findField(tagInfo);
+                    final TiffField field = directory.findField(tagInfo);
                     if (field != null) {
                         return field;
                     }
@@ -283,8 +283,8 @@ public class TiffImageMetadata extends I
         }
 
         for (int i = 0; i < directories.size(); i++) {
-            Directory directory = (Directory) directories.get(i);
-            TiffField field = directory.findField(tagInfo);
+            final Directory directory = (Directory) directories.get(i);
+            final TiffField field = directory.findField(tagInfo);
             if (field != null) {
                 return field;
             }
@@ -293,16 +293,16 @@ public class TiffImageMetadata extends I
         return null;
     }
 
-    public Object getFieldValue(TagInfo tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public Object getFieldValue(final TagInfo tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         return field.getValue();
     }
 
-    public byte[] getFieldValue(TagInfoByte tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public byte[] getFieldValue(final TagInfoByte tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
@@ -312,57 +312,57 @@ public class TiffImageMetadata extends I
         return field.fieldType.getRawBytes(field);
     }
 
-    public String[] getFieldValue(TagInfoAscii tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public String[] getFieldValue(final TagInfoAscii tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public short[] getFieldValue(TagInfoShort tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public short[] getFieldValue(final TagInfoShort tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public int[] getFieldValue(TagInfoLong tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public int[] getFieldValue(final TagInfoLong tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public RationalNumber[] getFieldValue(TagInfoRational tag)
+    public RationalNumber[] getFieldValue(final TagInfoRational tag)
             throws ImageReadException {
-        TiffField field = findField(tag);
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public byte[] getFieldValue(TagInfoSByte tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public byte[] getFieldValue(final TagInfoSByte tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
@@ -372,87 +372,87 @@ public class TiffImageMetadata extends I
         return field.fieldType.getRawBytes(field);
     }
 
-    public short[] getFieldValue(TagInfoSShort tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public short[] getFieldValue(final TagInfoSShort tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public int[] getFieldValue(TagInfoSLong tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public int[] getFieldValue(final TagInfoSLong tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public RationalNumber[] getFieldValue(TagInfoSRational tag)
+    public RationalNumber[] getFieldValue(final TagInfoSRational tag)
             throws ImageReadException {
-        TiffField field = findField(tag);
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public float[] getFieldValue(TagInfoFloat tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public float[] getFieldValue(final TagInfoFloat tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public double[] getFieldValue(TagInfoDouble tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public double[] getFieldValue(final TagInfoDouble tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         if (!tag.dataTypes.contains(field.fieldType)) {
             return null;
         }
-        byte[] bytes = field.fieldType.getRawBytes(field);
+        final byte[] bytes = field.fieldType.getRawBytes(field);
         return tag.getValue(field.byteOrder, bytes);
     }
 
-    public String getFieldValue(TagInfoGpsText tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public String getFieldValue(final TagInfoGpsText tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         return tag.getValue(field);
     }
 
-    public String getFieldValue(TagInfoXpString tag) throws ImageReadException {
-        TiffField field = findField(tag);
+    public String getFieldValue(final TagInfoXpString tag) throws ImageReadException {
+        final TiffField field = findField(tag);
         if (field == null) {
             return null;
         }
         return tag.getValue(field);
     }
 
-    public TiffDirectory findDirectory(int directoryType) {
-        List<? extends IImageMetadataItem> directories = getDirectories();
+    public TiffDirectory findDirectory(final int directoryType) {
+        final List<? extends IImageMetadataItem> directories = getDirectories();
         for (int i = 0; i < directories.size(); i++) {
-            Directory directory = (Directory) directories.get(i);
+            final Directory directory = (Directory) directories.get(i);
             if (directory.type == directoryType) {
                 return directory.directory;
             }
@@ -461,29 +461,29 @@ public class TiffImageMetadata extends I
     }
 
     public List<TiffField> getAllFields() {
-        List<TiffField> result = new ArrayList<TiffField>();
-        List<? extends IImageMetadataItem> directories = getDirectories();
+        final List<TiffField> result = new ArrayList<TiffField>();
+        final List<? extends IImageMetadataItem> directories = getDirectories();
         for (int i = 0; i < directories.size(); i++) {
-            Directory directory = (Directory) directories.get(i);
+            final Directory directory = (Directory) directories.get(i);
             result.addAll(directory.getAllFields());
         }
         return result;
     }
 
     public GPSInfo getGPS() throws ImageReadException {
-        TiffDirectory gpsDirectory = findDirectory(DIRECTORY_TYPE_GPS);
+        final TiffDirectory gpsDirectory = findDirectory(DIRECTORY_TYPE_GPS);
         if (null == gpsDirectory) {
             return null;
         }
 
         // more specific example of how to access GPS values.
-        TiffField latitudeRefField = gpsDirectory
+        final TiffField latitudeRefField = gpsDirectory
                 .findField(GpsTagConstants.GPS_TAG_GPS_LATITUDE_REF);
-        TiffField latitudeField = gpsDirectory
+        final TiffField latitudeField = gpsDirectory
                 .findField(GpsTagConstants.GPS_TAG_GPS_LATITUDE);
-        TiffField longitudeRefField = gpsDirectory
+        final TiffField longitudeRefField = gpsDirectory
                 .findField(GpsTagConstants.GPS_TAG_GPS_LONGITUDE_REF);
-        TiffField longitudeField = gpsDirectory
+        final TiffField longitudeField = gpsDirectory
                 .findField(GpsTagConstants.GPS_TAG_GPS_LONGITUDE);
 
         if (latitudeRefField == null || latitudeField == null
@@ -492,10 +492,10 @@ public class TiffImageMetadata extends I
         }
 
         // all of these values are strings.
-        String latitudeRef = latitudeRefField.getStringValue();
-        RationalNumber latitude[] = (RationalNumber[]) latitudeField.getValue();
-        String longitudeRef = longitudeRefField.getStringValue();
-        RationalNumber longitude[] = (RationalNumber[]) longitudeField
+        final String latitudeRef = latitudeRefField.getStringValue();
+        final RationalNumber latitude[] = (RationalNumber[]) latitudeField.getValue();
+        final String longitudeRef = longitudeRefField.getStringValue();
+        final RationalNumber longitude[] = (RationalNumber[]) longitudeField
                 .getValue();
 
         if (latitude.length != 3 || longitude.length != 3) {
@@ -503,13 +503,13 @@ public class TiffImageMetadata extends I
                     "Expected three values for latitude and longitude.");
         }
 
-        RationalNumber latitudeDegrees = latitude[0];
-        RationalNumber latitudeMinutes = latitude[1];
-        RationalNumber latitudeSeconds = latitude[2];
-
-        RationalNumber longitudeDegrees = longitude[0];
-        RationalNumber longitudeMinutes = longitude[1];
-        RationalNumber longitudeSeconds = longitude[2];
+        final RationalNumber latitudeDegrees = latitude[0];
+        final RationalNumber latitudeMinutes = latitude[1];
+        final RationalNumber latitudeSeconds = latitude[2];
+
+        final RationalNumber longitudeDegrees = longitude[0];
+        final RationalNumber longitudeMinutes = longitude[1];
+        final RationalNumber longitudeSeconds = longitude[2];
 
         return new GPSInfo(latitudeRef, longitudeRef, latitudeDegrees,
                 latitudeMinutes, latitudeSeconds, longitudeDegrees,
@@ -551,7 +551,7 @@ public class TiffImageMetadata extends I
             // latitude: 8 degrees, 40 minutes, 42.2 seconds S
             // longitude: 115 degrees, 26 minutes, 21.8 seconds E
 
-            StringBuilder result = new StringBuilder();
+            final StringBuilder result = new StringBuilder();
             result.append("[GPS. ");
             result.append("Latitude: " + latitudeDegrees.toDisplayString()
                     + " degrees, " + latitudeMinutes.toDisplayString()
@@ -567,7 +567,7 @@ public class TiffImageMetadata extends I
         }
 
         public double getLongitudeAsDegreesEast() throws ImageReadException {
-            double result = longitudeDegrees.doubleValue()
+            final double result = longitudeDegrees.doubleValue()
                     + (longitudeMinutes.doubleValue() / 60.0)
                     + (longitudeSeconds.doubleValue() / 3600.0);
 
@@ -582,7 +582,7 @@ public class TiffImageMetadata extends I
         }
 
         public double getLatitudeAsDegreesNorth() throws ImageReadException {
-            double result = latitudeDegrees.doubleValue()
+            final double result = latitudeDegrees.doubleValue()
                     + (latitudeMinutes.doubleValue() / 60.0)
                     + (latitudeSeconds.doubleValue() / 3600.0);
 

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java?rev=1417043&r1=1417042&r2=1417043&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageParser.java Tue Dec  4 17:23:16 2012
@@ -83,71 +83,71 @@ public class TiffImageParser extends Ima
     }
 
     @Override
-    public byte[] getICCProfileBytes(ByteSource byteSource, Map<String,Object> params)
+    public byte[] getICCProfileBytes(final ByteSource byteSource, final Map<String,Object> params)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffContents contents = new TiffReader(isStrict(params))
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffContents contents = new TiffReader(isStrict(params))
                 .readFirstDirectory(byteSource, params, false, formatCompliance);
-        TiffDirectory directory = contents.directories.get(0);
+        final TiffDirectory directory = contents.directories.get(0);
 
         return directory.getFieldValue(AllTagConstants.EXIF_TAG_INTER_COLOR_PROFILE,
                 false);
     }
 
     @Override
-    public Dimension getImageSize(ByteSource byteSource, Map<String,Object> params)
+    public Dimension getImageSize(final ByteSource byteSource, final Map<String,Object> params)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffContents contents = new TiffReader(isStrict(params))
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffContents contents = new TiffReader(isStrict(params))
                 .readFirstDirectory(byteSource, params, false, formatCompliance);
-        TiffDirectory directory = contents.directories.get(0);
+        final TiffDirectory directory = contents.directories.get(0);
 
-        TiffField widthField = directory.findField(
+        final TiffField widthField = directory.findField(
                 TiffTagConstants.TIFF_TAG_IMAGE_WIDTH, true);
-        TiffField heightField = directory.findField(
+        final TiffField heightField = directory.findField(
                 TiffTagConstants.TIFF_TAG_IMAGE_LENGTH, true);
 
         if ((widthField == null) || (heightField == null)) {
             throw new ImageReadException("TIFF image missing size info.");
         }
 
-        int height = heightField.getIntValue();
-        int width = widthField.getIntValue();
+        final int height = heightField.getIntValue();
+        final int width = widthField.getIntValue();
 
         return new Dimension(width, height);
     }
 
-    public byte[] embedICCProfile(byte image[], byte profile[]) {
+    public byte[] embedICCProfile(final byte image[], final byte profile[]) {
         return null;
     }
 
     @Override
-    public boolean embedICCProfile(File src, File dst, byte profile[]) {
+    public boolean embedICCProfile(final File src, final File dst, final byte profile[]) {
         return false;
     }
 
     @Override
-    public IImageMetadata getMetadata(ByteSource byteSource, Map<String,Object> params)
+    public IImageMetadata getMetadata(final ByteSource byteSource, final Map<String,Object> params)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffReader tiffReader = new TiffReader(isStrict(params));
-        TiffContents contents = tiffReader.readContents(byteSource, params,
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffReader tiffReader = new TiffReader(isStrict(params));
+        final TiffContents contents = tiffReader.readContents(byteSource, params,
                 formatCompliance);
 
-        List<TiffDirectory> directories = contents.directories;
+        final List<TiffDirectory> directories = contents.directories;
 
-        TiffImageMetadata result = new TiffImageMetadata(contents);
+        final TiffImageMetadata result = new TiffImageMetadata(contents);
 
         for (int i = 0; i < directories.size(); i++) {
-            TiffDirectory dir = directories.get(i);
+            final TiffDirectory dir = directories.get(i);
 
-            TiffImageMetadata.Directory metadataDirectory = new TiffImageMetadata.Directory(
+            final TiffImageMetadata.Directory metadataDirectory = new TiffImageMetadata.Directory(
                     tiffReader.getByteOrder(), dir);
 
-            List<TiffField> entries = dir.getDirectoryEntrys();
+            final List<TiffField> entries = dir.getDirectoryEntrys();
 
             for (int j = 0; j < entries.size(); j++) {
-                TiffField entry = entries.get(j);
+                final TiffField entry = entries.get(j);
                 metadataDirectory.add(entry);
             }
 
@@ -158,28 +158,28 @@ public class TiffImageParser extends Ima
     }
 
     @Override
-    public ImageInfo getImageInfo(ByteSource byteSource, Map<String,Object> params)
+    public ImageInfo getImageInfo(final ByteSource byteSource, final Map<String,Object> params)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffContents contents = new TiffReader(isStrict(params))
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffContents contents = new TiffReader(isStrict(params))
                 .readDirectories(byteSource, false, formatCompliance);
-        TiffDirectory directory = contents.directories.get(0);
+        final TiffDirectory directory = contents.directories.get(0);
 
-        TiffField widthField = directory.findField(
+        final TiffField widthField = directory.findField(
                 TiffTagConstants.TIFF_TAG_IMAGE_WIDTH, true);
-        TiffField heightField = directory.findField(
+        final TiffField heightField = directory.findField(
                 TiffTagConstants.TIFF_TAG_IMAGE_LENGTH, true);
 
         if ((widthField == null) || (heightField == null)) {
             throw new ImageReadException("TIFF image missing size info.");
         }
 
-        int height = heightField.getIntValue();
-        int width = widthField.getIntValue();
+        final int height = heightField.getIntValue();
+        final int width = widthField.getIntValue();
 
         // -------------------
 
-        TiffField resolutionUnitField = directory
+        final TiffField resolutionUnitField = directory
                 .findField(TiffTagConstants.TIFF_TAG_RESOLUTION_UNIT);
         int resolutionUnit = 2; // Inch
         if ((resolutionUnitField != null)
@@ -201,9 +201,9 @@ public class TiffImageParser extends Ima
             break;
 
         }
-        TiffField xResolutionField = directory
+        final TiffField xResolutionField = directory
                 .findField(TiffTagConstants.TIFF_TAG_XRESOLUTION);
-        TiffField yResolutionField = directory
+        final TiffField yResolutionField = directory
                 .findField(TiffTagConstants.TIFF_TAG_YRESOLUTION);
 
         int physicalWidthDpi = -1;
@@ -214,7 +214,7 @@ public class TiffImageParser extends Ima
         if (unitsPerInch > 0) {
             if ((xResolutionField != null)
                     && (xResolutionField.getValue() != null)) {
-                double XResolutionPixelsPerUnit = xResolutionField
+                final double XResolutionPixelsPerUnit = xResolutionField
                         .getDoubleValue();
                 physicalWidthDpi = (int) Math
                         .round((XResolutionPixelsPerUnit * unitsPerInch));
@@ -222,7 +222,7 @@ public class TiffImageParser extends Ima
             }
             if ((yResolutionField != null)
                     && (yResolutionField.getValue() != null)) {
-                double YResolutionPixelsPerUnit = yResolutionField
+                final double YResolutionPixelsPerUnit = yResolutionField
                         .getDoubleValue();
                 physicalHeightDpi = (int) Math
                         .round((YResolutionPixelsPerUnit * unitsPerInch));
@@ -232,7 +232,7 @@ public class TiffImageParser extends Ima
 
         // -------------------
 
-        TiffField bitsPerSampleField = directory
+        final TiffField bitsPerSampleField = directory
                 .findField(TiffTagConstants.TIFF_TAG_BITS_PER_SAMPLE);
 
         int bitsPerSample = 1;
@@ -241,40 +241,40 @@ public class TiffImageParser extends Ima
             bitsPerSample = bitsPerSampleField.getIntValueOrArraySum();
         }
 
-        int bitsPerPixel = bitsPerSample; // assume grayscale;
+        final int bitsPerPixel = bitsPerSample; // assume grayscale;
         // dunno if this handles colormapped images correctly.
 
         // -------------------
 
-        List<String> comments = new ArrayList<String>();
-        List<TiffField> entries = directory.entries;
+        final List<String> comments = new ArrayList<String>();
+        final List<TiffField> entries = directory.entries;
         for (int i = 0; i < entries.size(); i++) {
-            TiffField field = entries.get(i);
-            String comment = field.toString();
+            final TiffField field = entries.get(i);
+            final String comment = field.toString();
             comments.add(comment);
         }
 
-        ImageFormat format = ImageFormat.IMAGE_FORMAT_TIFF;
-        String formatName = "TIFF Tag-based Image File Format";
-        String mimeType = "image/tiff";
-        int numberOfImages = contents.directories.size();
+        final ImageFormat format = ImageFormat.IMAGE_FORMAT_TIFF;
+        final String formatName = "TIFF Tag-based Image File Format";
+        final String mimeType = "image/tiff";
+        final int numberOfImages = contents.directories.size();
         // not accurate ... only reflects first
-        boolean isProgressive = false;
+        final boolean isProgressive = false;
         // is TIFF ever interlaced/progressive?
 
-        String formatDetails = "Tiff v." + contents.header.tiffVersion;
+        final String formatDetails = "Tiff v." + contents.header.tiffVersion;
 
-        boolean isTransparent = false; // TODO: wrong
+        final boolean isTransparent = false; // TODO: wrong
         boolean usesPalette = false;
-        TiffField colorMapField = directory
+        final TiffField colorMapField = directory
                 .findField(TiffTagConstants.TIFF_TAG_COLOR_MAP);
         if (colorMapField != null) {
             usesPalette = true;
         }
 
-        int colorType = ImageInfo.COLOR_TYPE_RGB;
+        final int colorType = ImageInfo.COLOR_TYPE_RGB;
 
-        int compression = 0xffff & directory
+        final int compression = 0xffff & directory
                 .getSingleFieldValue(TiffTagConstants.TIFF_TAG_COMPRESSION);
         String compressionAlgorithm;
 
@@ -308,7 +308,7 @@ public class TiffImageParser extends Ima
             break;
         }
 
-        ImageInfo result = new ImageInfo(formatDetails, bitsPerPixel, comments,
+        final ImageInfo result = new ImageInfo(formatDetails, bitsPerPixel, comments,
                 format, formatName, height, mimeType, numberOfImages,
                 physicalHeightDpi, physicalHeightInch, physicalWidthDpi,
                 physicalWidthInch, width, isProgressive, isTransparent,
@@ -318,14 +318,14 @@ public class TiffImageParser extends Ima
     }
 
     @Override
-    public String getXmpXml(ByteSource byteSource, Map<String,Object> params)
+    public String getXmpXml(final ByteSource byteSource, final Map<String,Object> params)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffContents contents = new TiffReader(isStrict(params))
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffContents contents = new TiffReader(isStrict(params))
                 .readDirectories(byteSource, false, formatCompliance);
-        TiffDirectory directory = contents.directories.get(0);
+        final TiffDirectory directory = contents.directories.get(0);
 
-        byte bytes[] = directory.getFieldValue(TiffTagConstants.TIFF_TAG_XMP,
+        final byte bytes[] = directory.getFieldValue(TiffTagConstants.TIFF_TAG_XMP,
                 false);
         if (bytes == null) {
             return null;
@@ -333,21 +333,21 @@ public class TiffImageParser extends Ima
 
         try {
             // segment data is UTF-8 encoded xml.
-            String xml = new String(bytes, "utf-8");
+            final String xml = new String(bytes, "utf-8");
             return xml;
-        } catch (UnsupportedEncodingException e) {
+        } catch (final UnsupportedEncodingException e) {
             throw new ImageReadException("Invalid JPEG XMP Segment.");
         }
     }
 
     @Override
-    public boolean dumpImageFile(PrintWriter pw, ByteSource byteSource)
+    public boolean dumpImageFile(final PrintWriter pw, final ByteSource byteSource)
             throws ImageReadException, IOException {
         try {
             pw.println("tiff.dumpImageFile");
 
             {
-                ImageInfo imageData = getImageInfo(byteSource);
+                final ImageInfo imageData = getImageInfo(byteSource);
                 if (imageData == null) {
                     return false;
                 }
@@ -359,22 +359,22 @@ public class TiffImageParser extends Ima
 
             // try
             {
-                FormatCompliance formatCompliance = FormatCompliance
+                final FormatCompliance formatCompliance = FormatCompliance
                         .getDefault();
-                Map<String,Object> params = null;
-                TiffContents contents = new TiffReader(true).readContents(
+                final Map<String,Object> params = null;
+                final TiffContents contents = new TiffReader(true).readContents(
                         byteSource, params, formatCompliance);
 
-                List<TiffDirectory> directories = contents.directories;
+                final List<TiffDirectory> directories = contents.directories;
 
                 if (directories == null) {
                     return false;
                 }
 
                 for (int d = 0; d < directories.size(); d++) {
-                    TiffDirectory directory = directories.get(d);
+                    final TiffDirectory directory = directories.get(d);
 
-                    List<TiffField> entries = directory.entries;
+                    final List<TiffField> entries = directory.entries;
 
                     if (entries == null) {
                         return false;
@@ -383,7 +383,7 @@ public class TiffImageParser extends Ima
                     // Debug.debug("directory offset", directory.offset);
 
                     for (int i = 0; i < entries.size(); i++) {
-                        TiffField field = entries.get(i);
+                        final TiffField field = entries.get(i);
 
                         field.dump(pw, d + "");
                     }
@@ -405,29 +405,29 @@ public class TiffImageParser extends Ima
     }
 
     @Override
-    public FormatCompliance getFormatCompliance(ByteSource byteSource)
+    public FormatCompliance getFormatCompliance(final ByteSource byteSource)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        Map<String,Object> params = null;
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final Map<String,Object> params = null;
         new TiffReader(isStrict(params)).readContents(byteSource, params,
                 formatCompliance);
         return formatCompliance;
     }
 
-    public List<byte[]> collectRawImageData(ByteSource byteSource, Map<String,Object> params)
+    public List<byte[]> collectRawImageData(final ByteSource byteSource, final Map<String,Object> params)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffContents contents = new TiffReader(isStrict(params))
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffContents contents = new TiffReader(isStrict(params))
                 .readDirectories(byteSource, true, formatCompliance);
 
-        List<byte[]> result = new ArrayList<byte[]>();
+        final List<byte[]> result = new ArrayList<byte[]>();
         for (int i = 0; i < contents.directories.size(); i++) {
-            TiffDirectory directory = contents.directories.get(i);
-            List<ImageDataElement> dataElements = directory
+            final TiffDirectory directory = contents.directories.get(i);
+            final List<ImageDataElement> dataElements = directory
                     .getTiffRawImageDataElements();
             for (int j = 0; j < dataElements.size(); j++) {
-                TiffDirectory.ImageDataElement element = dataElements.get(j);
-                byte bytes[] = byteSource.getBlock(element.offset,
+                final TiffDirectory.ImageDataElement element = dataElements.get(j);
+                final byte bytes[] = byteSource.getBlock(element.offset,
                         element.length);
                 result.add(bytes);
             }
@@ -436,15 +436,15 @@ public class TiffImageParser extends Ima
     }
 
     @Override
-    public BufferedImage getBufferedImage(ByteSource byteSource, Map<String,Object> params)
+    public BufferedImage getBufferedImage(final ByteSource byteSource, final Map<String,Object> params)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffReader reader = new TiffReader(isStrict(params));
-        TiffContents contents = reader.readFirstDirectory(byteSource, params,
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffReader reader = new TiffReader(isStrict(params));
+        final TiffContents contents = reader.readFirstDirectory(byteSource, params,
                 true, formatCompliance);
-        ByteOrder byteOrder = reader.getByteOrder();
-        TiffDirectory directory = contents.directories.get(0);
-        BufferedImage result = directory.getTiffImage(byteOrder, params);
+        final ByteOrder byteOrder = reader.getByteOrder();
+        final TiffDirectory directory = contents.directories.get(0);
+        final BufferedImage result = directory.getTiffImage(byteOrder, params);
         if (null == result) {
             throw new ImageReadException("TIFF does not contain an image.");
         }
@@ -452,16 +452,16 @@ public class TiffImageParser extends Ima
     }
 
     @Override
-    public List<BufferedImage> getAllBufferedImages(ByteSource byteSource)
+    public List<BufferedImage> getAllBufferedImages(final ByteSource byteSource)
             throws ImageReadException, IOException {
-        FormatCompliance formatCompliance = FormatCompliance.getDefault();
-        TiffReader tiffReader = new TiffReader(true);
-        TiffContents contents = tiffReader.readDirectories(byteSource, true,
+        final FormatCompliance formatCompliance = FormatCompliance.getDefault();
+        final TiffReader tiffReader = new TiffReader(true);
+        final TiffContents contents = tiffReader.readDirectories(byteSource, true,
                 formatCompliance);
-        List<BufferedImage> results = new ArrayList<BufferedImage>();
+        final 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(
+            final TiffDirectory directory = contents.directories.get(i);
+            final BufferedImage result = directory.getTiffImage(
                     tiffReader.getByteOrder(), null);
             if (result != null) {
                 results.add(result);
@@ -470,31 +470,31 @@ public class TiffImageParser extends Ima
         return results;
     }
 
-    protected BufferedImage getBufferedImage(TiffDirectory directory,
-            ByteOrder byteOrder, Map<String,Object> params) throws ImageReadException, IOException {
-        List<TiffField> entries = directory.entries;
+    protected BufferedImage getBufferedImage(final TiffDirectory directory,
+            final ByteOrder byteOrder, final Map<String,Object> params) throws ImageReadException, IOException {
+        final List<TiffField> entries = directory.entries;
 
         if (entries == null) {
             throw new ImageReadException("TIFF missing entries");
         }
 
-        int photometricInterpretation = 0xffff & directory
+        final int photometricInterpretation = 0xffff & directory
                 .getSingleFieldValue(TiffTagConstants.TIFF_TAG_PHOTOMETRIC_INTERPRETATION);
-        int compression = 0xffff & directory
+        final int compression = 0xffff & directory
                 .getSingleFieldValue(TiffTagConstants.TIFF_TAG_COMPRESSION);
-        int width = directory.findField(TiffTagConstants.TIFF_TAG_IMAGE_WIDTH,
+        final int width = directory.findField(TiffTagConstants.TIFF_TAG_IMAGE_WIDTH,
                 true).getIntValue();
-        int height = directory.findField(
+        final int height = directory.findField(
                 TiffTagConstants.TIFF_TAG_IMAGE_LENGTH, true).getIntValue();
         int samplesPerPixel = 1;
-        TiffField samplesPerPixelField = directory
+        final TiffField samplesPerPixelField = directory
                 .findField(TiffTagConstants.TIFF_TAG_SAMPLES_PER_PIXEL);
         if (samplesPerPixelField != null) {
             samplesPerPixel = samplesPerPixelField.getIntValue();
         }
         int bitsPerSample[] = { 1 };
         int bitsPerPixel = samplesPerPixel;
-        TiffField bitsPerSampleField = directory
+        final TiffField bitsPerSampleField = directory
                 .findField(TiffTagConstants.TIFF_TAG_BITS_PER_SAMPLE);
         if (bitsPerSampleField != null) {
             bitsPerSample = bitsPerSampleField.getIntArrayValue();
@@ -511,7 +511,7 @@ public class TiffImageParser extends Ima
             // dumpOptionalNumberTag(entries, TIFF_TAG_FREE_OFFSETS);
             // dumpOptionalNumberTag(entries, TIFF_TAG_ORIENTATION);
             // dumpOptionalNumberTag(entries, TIFF_TAG_PLANAR_CONFIGURATION);
-            TiffField predictorField = directory
+            final TiffField predictorField = directory
                     .findField(TiffTagConstants.TIFF_TAG_PREDICTOR);
             if (null != predictorField) {
                 predictor = predictorField.getIntValueOrArraySum();
@@ -524,16 +524,16 @@ public class TiffImageParser extends Ima
                     + bitsPerSample.length + ")");
         }
 
-        boolean hasAlpha = false;
-        ImageBuilder imageBuilder = new ImageBuilder(width, height, hasAlpha);
+        final boolean hasAlpha = false;
+        final ImageBuilder imageBuilder = new ImageBuilder(width, height, hasAlpha);
 
-        PhotometricInterpreter photometricInterpreter = getPhotometricInterpreter(
+        final PhotometricInterpreter photometricInterpreter = getPhotometricInterpreter(
                 directory, photometricInterpretation, bitsPerPixel,
                 bitsPerSample, predictor, samplesPerPixel, width, height);
 
-        TiffImageData imageData = directory.getTiffImageData();
+        final TiffImageData imageData = directory.getTiffImageData();
 
-        DataReader dataReader = imageData.getDataReader(directory,
+        final DataReader dataReader = imageData.getDataReader(directory,
                 photometricInterpreter, bitsPerPixel, bitsPerSample, predictor,
                 samplesPerPixel, width, height, compression, byteOrder);
 
@@ -545,25 +545,25 @@ public class TiffImageParser extends Ima
     }
 
     private PhotometricInterpreter getPhotometricInterpreter(
-            TiffDirectory directory, int photometricInterpretation,
-            int bitsPerPixel, int bitsPerSample[], int predictor,
-            int samplesPerPixel, int width, int height)
+            final TiffDirectory directory, final int photometricInterpretation,
+            final int bitsPerPixel, final int bitsPerSample[], final int predictor,
+            final int samplesPerPixel, final int width, final int height)
             throws ImageReadException {
         switch (photometricInterpretation) {
         case 0:
         case 1:
-            boolean invert = photometricInterpretation == 0;
+            final boolean invert = photometricInterpretation == 0;
 
             return new PhotometricInterpreterBiLevel(bitsPerPixel,
                     samplesPerPixel, bitsPerSample, predictor, width, height,
                     invert);
         case 3: // Palette
         {
-            int colorMap[] = directory.findField(
+            final int colorMap[] = directory.findField(
                     TiffTagConstants.TIFF_TAG_COLOR_MAP, true)
                     .getIntArrayValue();
 
-            int expected_colormap_size = 3 * (1 << bitsPerPixel);
+            final int expected_colormap_size = 3 * (1 << bitsPerPixel);
 
             if (colorMap.length != expected_colormap_size) {
                 throw new ImageReadException("Tiff: fColorMap.length ("
@@ -582,18 +582,18 @@ public class TiffImageParser extends Ima
                     bitsPerSample, predictor, width, height);
         case 6: //
         {
-            double yCbCrCoefficients[] = directory.findField(
+            final double yCbCrCoefficients[] = directory.findField(
                     TiffTagConstants.TIFF_TAG_YCBCR_COEFFICIENTS, true)
                     .getDoubleArrayValue();
 
-            int yCbCrPositioning[] = directory.findField(
+            final int yCbCrPositioning[] = directory.findField(
                     TiffTagConstants.TIFF_TAG_YCBCR_POSITIONING, true)
                     .getIntArrayValue();
-            int yCbCrSubSampling[] = directory.findField(
+            final int yCbCrSubSampling[] = directory.findField(
                     TiffTagConstants.TIFF_TAG_YCBCR_SUB_SAMPLING, true)
                     .getIntArrayValue();
 
-            double referenceBlackWhite[] = directory.findField(
+            final double referenceBlackWhite[] = directory.findField(
                     TiffTagConstants.TIFF_TAG_REFERENCE_BLACK_WHITE, true)
                     .getDoubleArrayValue();
 
@@ -608,7 +608,7 @@ public class TiffImageParser extends Ima
 
         case 32844:
         case 32845: {
-            boolean yonly = (photometricInterpretation == 32844);
+            final boolean yonly = (photometricInterpretation == 32844);
             return new PhotometricInterpreterLogLuv(samplesPerPixel,
                     bitsPerSample, predictor, width, height, yonly);
         }
@@ -621,7 +621,7 @@ public class TiffImageParser extends Ima
     }
 
     @Override
-    public void writeImage(BufferedImage src, OutputStream os, Map<String,Object> params)
+    public void writeImage(final BufferedImage src, final OutputStream os, final Map<String,Object> params)
             throws ImageWriteException, IOException {
         new TiffImageWriterLossy().writeImage(src, os, params);
     }

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java?rev=1417043&r1=1417042&r2=1417043&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffReader.java Tue Dec  4 17:23:16 2012
@@ -40,12 +40,12 @@ public class TiffReader extends BinaryFi
 
     private final boolean strict;
 
-    public TiffReader(boolean strict) {
+    public TiffReader(final boolean strict) {
         this.strict = strict;
     }
 
-    private TiffHeader readTiffHeader(ByteSource byteSource,
-            FormatCompliance formatCompliance) throws ImageReadException,
+    private TiffHeader readTiffHeader(final ByteSource byteSource,
+            final FormatCompliance formatCompliance) throws ImageReadException,
             IOException {
         InputStream is = null;
         try {
@@ -56,13 +56,13 @@ public class TiffReader extends BinaryFi
                 if (is != null) {
                     is.close();
                 }
-            } catch (Exception e) {
+            } catch (final Exception e) {
                 Debug.debug(e);
             }
         }
     }
     
-    private ByteOrder getTiffByteOrder(int byteOrderByte) throws ImageReadException {
+    private ByteOrder getTiffByteOrder(final int byteOrderByte) throws ImageReadException {
         if (byteOrderByte == 'I') {
             return ByteOrder.INTEL;
         } else if (byteOrderByte == 'M') {
@@ -72,24 +72,24 @@ public class TiffReader extends BinaryFi
         }
     }
 
-    private TiffHeader readTiffHeader(InputStream is,
-            FormatCompliance formatCompliance) throws ImageReadException,
+    private TiffHeader readTiffHeader(final InputStream is,
+            final FormatCompliance formatCompliance) throws ImageReadException,
             IOException {
-        int BYTE_ORDER_1 = readByte("BYTE_ORDER_1", is, "Not a Valid TIFF File");
-        int BYTE_ORDER_2 = readByte("BYTE_ORDER_2", is, "Not a Valid TIFF File");
+        final int BYTE_ORDER_1 = readByte("BYTE_ORDER_1", is, "Not a Valid TIFF File");
+        final int BYTE_ORDER_2 = readByte("BYTE_ORDER_2", is, "Not a Valid TIFF File");
         if (BYTE_ORDER_1 != BYTE_ORDER_2) {
             throw new ImageReadException("Byte Order bytes don't match (" + BYTE_ORDER_1
                     + ", " + BYTE_ORDER_2 + ").");
         }
-        ByteOrder byteOrder = getTiffByteOrder(BYTE_ORDER_1);
+        final ByteOrder byteOrder = getTiffByteOrder(BYTE_ORDER_1);
         setByteOrder(byteOrder);
 
-        int tiffVersion = read2Bytes("tiffVersion", is, "Not a Valid TIFF File");
+        final int tiffVersion = read2Bytes("tiffVersion", is, "Not a Valid TIFF File");
         if (tiffVersion != 42) {
             throw new ImageReadException("Unknown Tiff Version: " + tiffVersion);
         }
 
-        int offsetToFirstIFD = read4Bytes("offsetToFirstIFD", is,
+        final int offsetToFirstIFD = read4Bytes("offsetToFirstIFD", is,
                 "Not a Valid TIFF File");
 
         skipBytes(is, offsetToFirstIFD - 8,
@@ -102,33 +102,33 @@ public class TiffReader extends BinaryFi
         return new TiffHeader(byteOrder, tiffVersion, offsetToFirstIFD);
     }
 
-    private void readDirectories(ByteSource byteSource,
-            FormatCompliance formatCompliance, Listener listener)
+    private void readDirectories(final ByteSource byteSource,
+            final FormatCompliance formatCompliance, final Listener listener)
             throws ImageReadException, IOException {
-        TiffHeader tiffHeader = readTiffHeader(byteSource, formatCompliance);
+        final TiffHeader tiffHeader = readTiffHeader(byteSource, formatCompliance);
         if (!listener.setTiffHeader(tiffHeader)) {
             return;
         }
 
-        int offset = tiffHeader.offsetToFirstIFD;
-        int dirType = TiffDirectory.DIRECTORY_TYPE_ROOT;
+        final int offset = tiffHeader.offsetToFirstIFD;
+        final int dirType = TiffDirectory.DIRECTORY_TYPE_ROOT;
 
-        List<Number> visited = new ArrayList<Number>();
+        final List<Number> visited = new ArrayList<Number>();
         readDirectory(byteSource, offset, dirType, formatCompliance, listener,
                 visited);
     }
 
-    private boolean readDirectory(ByteSource byteSource, int offset,
-            int dirType, FormatCompliance formatCompliance, Listener listener,
-            List<Number> visited) throws ImageReadException, IOException {
-        boolean ignoreNextDirectory = false;
+    private boolean readDirectory(final ByteSource byteSource, final int offset,
+            final int dirType, final FormatCompliance formatCompliance, final Listener listener,
+            final List<Number> visited) throws ImageReadException, IOException {
+        final boolean ignoreNextDirectory = false;
         return readDirectory(byteSource, offset, dirType, formatCompliance,
                 listener, ignoreNextDirectory, visited);
     }
 
-    private boolean readDirectory(ByteSource byteSource, int offset,
-            int dirType, FormatCompliance formatCompliance, Listener listener,
-            boolean ignoreNextDirectory, List<Number> visited)
+    private boolean readDirectory(final ByteSource byteSource, final int offset,
+            final int dirType, final FormatCompliance formatCompliance, final Listener listener,
+            final boolean ignoreNextDirectory, final List<Number> visited)
             throws ImageReadException, IOException {
 
         // Debug.debug();
@@ -155,13 +155,13 @@ public class TiffReader extends BinaryFi
             is = byteSource.getInputStream();
             skipBytes(is, offset);
 
-            List<TiffField> fields = new ArrayList<TiffField>();
+            final List<TiffField> fields = new ArrayList<TiffField>();
 
             int entryCount;
             try {
                 entryCount = read2Bytes("DirectoryEntryCount", is,
                         "Not a Valid TIFF File");
-            } catch (IOException e) {
+            } catch (final IOException e) {
                 if (strict) {
                     throw e;
                 } else {
@@ -172,16 +172,16 @@ public class TiffReader extends BinaryFi
             // Debug.debug("entryCount", entryCount);
 
             for (int i = 0; i < entryCount; i++) {
-                int tag = read2Bytes("Tag", is, "Not a Valid TIFF File");
-                int type = read2Bytes("Type", is, "Not a Valid TIFF File");
-                int length = read4Bytes("Length", is, "Not a Valid TIFF File");
+                final int tag = read2Bytes("Tag", is, "Not a Valid TIFF File");
+                final int type = read2Bytes("Type", is, "Not a Valid TIFF File");
+                final int length = read4Bytes("Length", is, "Not a Valid TIFF File");
 
                 // Debug.debug("tag*", tag + " (0x" + Integer.toHexString(tag)
                 // + ")");
 
-                byte valueOffsetBytes[] = readByteArray("ValueOffset", 4, is,
+                final byte valueOffsetBytes[] = readByteArray("ValueOffset", 4, is,
                         "Not a Valid TIFF File");
-                int valueOffset = convertByteArrayToInt("ValueOffset",
+                final int valueOffset = convertByteArrayToInt("ValueOffset",
                         valueOffsetBytes);
 
                 if (tag == 0) {
@@ -194,7 +194,7 @@ public class TiffReader extends BinaryFi
 
                 // if (keepField(tag, tags))
                 // {
-                TiffField field = new TiffField(tag, dirType, type, length,
+                final TiffField field = new TiffField(tag, dirType, type, length,
                         valueOffset, valueOffsetBytes, getByteOrder());
                 field.setSortHint(i);
 
@@ -202,9 +202,9 @@ public class TiffReader extends BinaryFi
 
                 try {
                     field.fillInValue(byteSource);
-                } catch (TiffValueOutsideFileBoundsException valueOutsideFileException) {
+                } catch (final TiffValueOutsideFileBoundsException valueOutsideFileException) {
                     if (strict) {
-                        IOException ioEx = new IOException();
+                        final IOException ioEx = new IOException();
                         ioEx.initCause(valueOutsideFileException);
                         throw ioEx;
                     } else {
@@ -222,21 +222,21 @@ public class TiffReader extends BinaryFi
                 }
             }
 
-            int nextDirectoryOffset = read4Bytes("nextDirectoryOffset", is,
+            final int nextDirectoryOffset = read4Bytes("nextDirectoryOffset", is,
                     "Not a Valid TIFF File");
             // Debug.debug("nextDirectoryOffset", nextDirectoryOffset);
 
-            TiffDirectory directory = new TiffDirectory(dirType, fields,
+            final TiffDirectory directory = new TiffDirectory(dirType, fields,
                     offset, nextDirectoryOffset);
 
             if (listener.readImageData()) {
                 if (directory.hasTiffImageData()) {
-                    TiffImageData rawImageData = getTiffRawImageData(
+                    final TiffImageData rawImageData = getTiffRawImageData(
                             byteSource, directory);
                     directory.setTiffImageData(rawImageData);
                 }
                 if (directory.hasJpegImageData()) {
-                    JpegImageData rawJpegImageData = getJpegRawImageData(
+                    final JpegImageData rawJpegImageData = getJpegRawImageData(
                             byteSource, directory);
                     directory.setJpegImageData(rawJpegImageData);
                 }
@@ -258,7 +258,7 @@ public class TiffReader extends BinaryFi
                         TiffDirectory.DIRECTORY_TYPE_INTEROPERABILITY
                 };
                 for (int i = 0; i < offsetFields.length; i++) {
-                    TagInfoLong offsetField = offsetFields[i];
+                    final TagInfoLong offsetField = offsetFields[i];
                     if (directory.findField(offsetField) != null) {
                         int subDirectoryOffset;
                         int subDirectoryType;
@@ -270,7 +270,7 @@ public class TiffReader extends BinaryFi
                                     subDirectoryOffset, subDirectoryType,
                                     formatCompliance, listener, true, visited);
     
-                        } catch (ImageReadException imageReadException) {
+                        } catch (final ImageReadException imageReadException) {
                             if (strict) {
                                 throw imageReadException;
                             }
@@ -294,7 +294,7 @@ public class TiffReader extends BinaryFi
                 if (is != null) {
                     is.close();
                 }
-            } catch (Exception e) {
+            } catch (final Exception e) {
                 Debug.debug(e);
             }
         }
@@ -322,7 +322,7 @@ public class TiffReader extends BinaryFi
             this(null);
         }
 
-        public Collector(Map<String,Object> params) {
+        public Collector(final Map<String,Object> params) {
             boolean readThumbnails = true;
             if (params != null && params.containsKey(PARAM_KEY_READ_THUMBNAILS)) {
                 readThumbnails = Boolean.TRUE.equals(params
@@ -331,17 +331,17 @@ public class TiffReader extends BinaryFi
             this.readThumbnails = readThumbnails;
         }
 
-        public boolean setTiffHeader(TiffHeader tiffHeader) {
+        public boolean setTiffHeader(final TiffHeader tiffHeader) {
             this.tiffHeader = tiffHeader;
             return true;
         }
 
-        public boolean addDirectory(TiffDirectory directory) {
+        public boolean addDirectory(final TiffDirectory directory) {
             directories.add(directory);
             return true;
         }
 
-        public boolean addField(TiffField field) {
+        public boolean addField(final TiffField field) {
             fields.add(field);
             return true;
         }
@@ -367,7 +367,7 @@ public class TiffReader extends BinaryFi
         }
 
         @Override
-        public boolean addDirectory(TiffDirectory directory) {
+        public boolean addDirectory(final TiffDirectory directory) {
             super.addDirectory(directory);
             return false;
         }
@@ -386,7 +386,7 @@ public class TiffReader extends BinaryFi
         }
 
         @Override
-        public boolean addDirectory(TiffDirectory directory) {
+        public boolean addDirectory(final TiffDirectory directory) {
             super.addDirectory(directory);
             return false;
         }
@@ -397,12 +397,12 @@ public class TiffReader extends BinaryFi
         }
     }
 
-    public TiffContents readFirstDirectory(ByteSource byteSource, Map<String,Object> params,
-            boolean readImageData, FormatCompliance formatCompliance)
+    public TiffContents readFirstDirectory(final ByteSource byteSource, final Map<String,Object> params,
+            final boolean readImageData, final FormatCompliance formatCompliance)
             throws ImageReadException, IOException {
-        Collector collector = new FirstDirectoryCollector(readImageData);
+        final Collector collector = new FirstDirectoryCollector(readImageData);
         read(byteSource, params, formatCompliance, collector);
-        TiffContents contents = collector.getContents();
+        final TiffContents contents = collector.getContents();
         if (contents.directories.size() < 1) {
             throw new ImageReadException(
                     "Image did not contain any directories.");
@@ -410,12 +410,12 @@ public class TiffReader extends BinaryFi
         return contents;
     }
 
-    public TiffContents readDirectories(ByteSource byteSource,
-            boolean readImageData, FormatCompliance formatCompliance)
+    public TiffContents readDirectories(final ByteSource byteSource,
+            final boolean readImageData, final FormatCompliance formatCompliance)
             throws ImageReadException, IOException {
-        Collector collector = new Collector(null);
+        final Collector collector = new Collector(null);
         readDirectories(byteSource, formatCompliance, collector);
-        TiffContents contents = collector.getContents();
+        final TiffContents contents = collector.getContents();
         if (contents.directories.size() < 1) {
             throw new ImageReadException(
                     "Image did not contain any directories.");
@@ -423,41 +423,41 @@ public class TiffReader extends BinaryFi
         return contents;
     }
 
-    public TiffContents readContents(ByteSource byteSource, Map<String,Object> params,
-            FormatCompliance formatCompliance) throws ImageReadException,
+    public TiffContents readContents(final ByteSource byteSource, final Map<String,Object> params,
+            final FormatCompliance formatCompliance) throws ImageReadException,
             IOException {
 
-        Collector collector = new Collector(params);
+        final Collector collector = new Collector(params);
         read(byteSource, params, formatCompliance, collector);
-        TiffContents contents = collector.getContents();
+        final TiffContents contents = collector.getContents();
         return contents;
     }
 
-    public void read(ByteSource byteSource, Map<String,Object> params,
-            FormatCompliance formatCompliance, Listener listener)
+    public void read(final ByteSource byteSource, final Map<String,Object> params,
+            final FormatCompliance formatCompliance, final Listener listener)
             throws ImageReadException, IOException {
         // TiffContents contents =
         readDirectories(byteSource, formatCompliance, listener);
     }
 
-    private TiffImageData getTiffRawImageData(ByteSource byteSource,
-            TiffDirectory directory) throws ImageReadException, IOException {
+    private TiffImageData getTiffRawImageData(final ByteSource byteSource,
+            final TiffDirectory directory) throws ImageReadException, IOException {
 
-        List<ImageDataElement> elements = directory
+        final List<ImageDataElement> elements = directory
                 .getTiffRawImageDataElements();
-        TiffImageData.Data data[] = new TiffImageData.Data[elements.size()];
+        final TiffImageData.Data data[] = new TiffImageData.Data[elements.size()];
 
         if (byteSource instanceof ByteSourceFile) {
-            ByteSourceFile bsf = (ByteSourceFile) byteSource;
+            final ByteSourceFile bsf = (ByteSourceFile) byteSource;
             for (int i = 0; i < elements.size(); i++) {
-                TiffDirectory.ImageDataElement element = elements.get(i);
+                final TiffDirectory.ImageDataElement element = elements.get(i);
                 data[i] = new TiffImageData.ByteSourceData(element.offset,
                         element.length, bsf);
             }
         } else {
             for (int i = 0; i < elements.size(); i++) {
-                TiffDirectory.ImageDataElement element = elements.get(i);
-                byte bytes[] = byteSource.getBlock(element.offset,
+                final TiffDirectory.ImageDataElement element = elements.get(i);
+                final byte bytes[] = byteSource.getBlock(element.offset,
                         element.length);
                 data[i] = new TiffImageData.Data(element.offset,
                         element.length, bytes);
@@ -465,14 +465,14 @@ public class TiffReader extends BinaryFi
         }
 
         if (directory.imageDataInStrips()) {
-            TiffField rowsPerStripField = directory
+            final TiffField rowsPerStripField = directory
                     .findField(TiffTagConstants.TIFF_TAG_ROWS_PER_STRIP);
             int rowsPerStrip;
 
             if (null != rowsPerStripField) {
                 rowsPerStrip = rowsPerStripField.getIntValue();
             } else {
-                TiffField imageHeight = directory
+                final TiffField imageHeight = directory
                         .findField(TiffTagConstants.TIFF_TAG_IMAGE_LENGTH);
                 /**
                  * if rows per strip not present then rowsPerStrip is equal to
@@ -483,34 +483,34 @@ public class TiffReader extends BinaryFi
 
             return new TiffImageData.Strips(data, rowsPerStrip);
         } else {
-            TiffField tileWidthField = directory
+            final TiffField tileWidthField = directory
                     .findField(TiffTagConstants.TIFF_TAG_TILE_WIDTH);
             if (null == tileWidthField) {
                 throw new ImageReadException("Can't find tile width field.");
             }
-            int tileWidth = tileWidthField.getIntValue();
+            final int tileWidth = tileWidthField.getIntValue();
 
-            TiffField tileLengthField = directory
+            final TiffField tileLengthField = directory
                     .findField(TiffTagConstants.TIFF_TAG_TILE_LENGTH);
             if (null == tileLengthField) {
                 throw new ImageReadException("Can't find tile length field.");
             }
-            int tileLength = tileLengthField.getIntValue();
+            final int tileLength = tileLengthField.getIntValue();
 
             return new TiffImageData.Tiles(data, tileWidth, tileLength);
         }
     }
 
-    private JpegImageData getJpegRawImageData(ByteSource byteSource,
-            TiffDirectory directory) throws ImageReadException, IOException {
-        ImageDataElement element = directory.getJpegRawImageDataElement();
-        int offset = element.offset;
+    private JpegImageData getJpegRawImageData(final ByteSource byteSource,
+            final TiffDirectory directory) throws ImageReadException, IOException {
+        final ImageDataElement element = directory.getJpegRawImageDataElement();
+        final int offset = element.offset;
         int length = element.length;
         // In case the length is not correct, adjust it and check if the last read byte actually is the end of the image
         if (offset + length > byteSource.getLength()) {
             length = (int) byteSource.getLength() - offset;
         }
-        byte data[] = byteSource.getBlock(offset, length);
+        final byte data[] = byteSource.getBlock(offset, length);
         // check if the last read byte is actually the end of the image data
         if (length < 2 ||
                 (((data[data.length - 2] & 0xff) << 8) | (data[data.length - 1] & 0xff)) != JpegConstants.EOIMarker) {

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffValueOutsideFileBoundsException.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffValueOutsideFileBoundsException.java?rev=1417043&r1=1417042&r2=1417043&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffValueOutsideFileBoundsException.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/TiffValueOutsideFileBoundsException.java Tue Dec  4 17:23:16 2012
@@ -19,7 +19,7 @@ package org.apache.commons.imaging.forma
 public class TiffValueOutsideFileBoundsException extends Exception {
     private static final long serialVersionUID = 5674955248527127823L;
 
-    public TiffValueOutsideFileBoundsException(String message) {
+    public TiffValueOutsideFileBoundsException(final String message) {
         super(message);
     }
 }

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/constants/TagConstantsUtils.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/constants/TagConstantsUtils.java?rev=1417043&r1=1417042&r2=1417043&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/constants/TagConstantsUtils.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/constants/TagConstantsUtils.java Tue Dec  4 17:23:16 2012
@@ -26,15 +26,15 @@ public class TagConstantsUtils implement
     private static final TiffDirectoryType[] tiffDirectoryTypes = TiffDirectoryType
             .values();
 
-    public static List<TagInfo> mergeTagLists(List<?>... tagLists) {
+    public static List<TagInfo> mergeTagLists(final List<?>... tagLists) {
         int count = 0;
-        for (List<?> tagList : tagLists) {
+        for (final List<?> tagList : tagLists) {
             count += tagList.size();
         }
 
-        ArrayList<TagInfo> result = new ArrayList<TagInfo>(count);
+        final ArrayList<TagInfo> result = new ArrayList<TagInfo>(count);
 
-        for (List<?> tagList : tagLists) {
+        for (final List<?> tagList : tagLists) {
             for (int j = 0; j < tagList.size(); j++) {
                 result.add((TagInfo)tagList.get(j));
             }
@@ -43,9 +43,9 @@ public class TagConstantsUtils implement
         return result;
     }
 
-    public static TiffDirectoryType getExifDirectoryType(int type) {
+    public static TiffDirectoryType getExifDirectoryType(final int type) {
 
-        for (TiffDirectoryType tiffDirectoryType : tiffDirectoryTypes) {
+        for (final TiffDirectoryType tiffDirectoryType : tiffDirectoryTypes) {
             if (tiffDirectoryType.directoryType == type) {
                 return tiffDirectoryType;
             }
@@ -53,7 +53,7 @@ public class TagConstantsUtils implement
         return TiffDirectoryType.EXIF_DIRECTORY_UNKNOWN;
     }
 
-    public static BinaryConstant createMicrosoftHdPhotoGuidEndingWith(byte end) {
+    public static BinaryConstant createMicrosoftHdPhotoGuidEndingWith(final byte end) {
         return new BinaryConstant(new byte[] { (byte) 0x24, (byte) 0xC3,
                 (byte) 0xDD, (byte) 0x6F, (byte) 0x03, (byte) 0x4E,
                 (byte) 0xFE, (byte) 0x4B, (byte) 0xB1, (byte) 0x85,

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReader.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReader.java?rev=1417043&r1=1417042&r2=1417043&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReader.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReader.java Tue Dec  4 17:23:16 2012
@@ -43,9 +43,9 @@ public abstract class DataReader impleme
     protected final int samplesPerPixel;
     protected final int width, height;
 
-    public DataReader(TiffDirectory directory,
-            PhotometricInterpreter photometricInterpreter, int bitsPerSample[],
-            int predictor, int samplesPerPixel, int width, int height) {
+    public DataReader(final TiffDirectory directory,
+            final PhotometricInterpreter photometricInterpreter, final int bitsPerSample[],
+            final int predictor, final int samplesPerPixel, final int width, final int height) {
         this.directory = directory;
         this.photometricInterpreter = photometricInterpreter;
         this.bitsPerSample = bitsPerSample;
@@ -71,13 +71,13 @@ public abstract class DataReader impleme
      *            bitsPerSample.length
      * @throws IOException
      */
-    protected void getSamplesAsBytes(BitInputStream bis, int[] result)
+    protected void getSamplesAsBytes(final BitInputStream bis, final int[] result)
             throws IOException {
         for (int i = 0; i < bitsPerSample.length; i++) {
-            int bits = bitsPerSample[i];
+            final int bits = bitsPerSample[i];
             int sample = bis.readBits(bits);
             if (bits < 8) {
-                int sign = sample & 1;
+                final int sign = sample & 1;
                 sample = sample << (8 - bits); // scale to byte.
                 if (sign > 0) {
                     sample = sample | ((1 << (8 - bits)) - 1); // extend to byte
@@ -95,7 +95,7 @@ public abstract class DataReader impleme
         }
     }
 
-    protected int[] applyPredictor(int samples[]) {
+    protected int[] applyPredictor(final int samples[]) {
         if (predictor == 2) {
             // Horizontal differencing.
             for (int i = 0; i < samples.length; i++) {
@@ -107,10 +107,10 @@ public abstract class DataReader impleme
         return samples;
     }
 
-    protected byte[] decompress(byte compressed[], int compression,
-            int expected_size, int tileWidth, int tileHeight)
+    protected byte[] decompress(final byte compressed[], final int compression,
+            final int expected_size, final int tileWidth, final int tileHeight)
             throws ImageReadException, IOException {
-        TiffField fillOrderField = directory
+        final TiffField fillOrderField = directory
                 .findField(TiffTagConstants.TIFF_TAG_FILL_ORDER);
         int fillOrder = TiffTagConstants.FILL_ORDER_VALUE_NORMAL;
         if (fillOrderField != null) {
@@ -136,18 +136,18 @@ public abstract class DataReader impleme
                     tileWidth, tileHeight);
         case TIFF_COMPRESSION_CCITT_GROUP_3: {
             int t4Options = 0;
-            TiffField field = directory
+            final TiffField field = directory
                     .findField(TiffTagConstants.TIFF_TAG_T4_OPTIONS);
             if (field != null) {
                 t4Options = field.getIntValue();
             }
-            boolean is2D = (t4Options & TIFF_FLAG_T4_OPTIONS_2D) != 0;
-            boolean usesUncompressedMode = (t4Options & TIFF_FLAG_T4_OPTIONS_UNCOMPRESSED_MODE) != 0;
+            final boolean is2D = (t4Options & TIFF_FLAG_T4_OPTIONS_2D) != 0;
+            final boolean usesUncompressedMode = (t4Options & TIFF_FLAG_T4_OPTIONS_UNCOMPRESSED_MODE) != 0;
             if (usesUncompressedMode) {
                 throw new ImageReadException(
                         "T.4 compression with the uncompressed mode extension is not yet supported");
             }
-            boolean hasFillBitsBeforeEOL = (t4Options & TIFF_FLAG_T4_OPTIONS_FILL) != 0;
+            final boolean hasFillBitsBeforeEOL = (t4Options & TIFF_FLAG_T4_OPTIONS_FILL) != 0;
             if (is2D) {
                 return T4AndT6Compression.decompressT4_2D(compressed,
                         tileWidth, tileHeight, hasFillBitsBeforeEOL);
@@ -158,12 +158,12 @@ public abstract class DataReader impleme
         }
         case TIFF_COMPRESSION_CCITT_GROUP_4: {
             int t6Options = 0;
-            TiffField field = directory
+            final TiffField field = directory
                     .findField(TiffTagConstants.TIFF_TAG_T6_OPTIONS);
             if (field != null) {
                 t6Options = field.getIntValue();
             }
-            boolean usesUncompressedMode = (t6Options & TIFF_FLAG_T6_OPTIONS_UNCOMPRESSED_MODE) != 0;
+            final boolean usesUncompressedMode = (t6Options & TIFF_FLAG_T6_OPTIONS_UNCOMPRESSED_MODE) != 0;
             if (usesUncompressedMode) {
                 throw new ImageReadException(
                         "T.6 compression with the uncompressed mode extension is not yet supported");
@@ -173,23 +173,23 @@ public abstract class DataReader impleme
         }
         case TIFF_COMPRESSION_LZW: // LZW
         {
-            InputStream is = new ByteArrayInputStream(compressed);
+            final InputStream is = new ByteArrayInputStream(compressed);
 
-            int LZWMinimumCodeSize = 8;
+            final int LZWMinimumCodeSize = 8;
 
-            MyLzwDecompressor myLzwDecompressor = new MyLzwDecompressor(
+            final MyLzwDecompressor myLzwDecompressor = new MyLzwDecompressor(
                     LZWMinimumCodeSize, ByteOrder.NETWORK);
 
             myLzwDecompressor.setTiffLZWMode();
 
-            byte[] result = myLzwDecompressor.decompress(is, expected_size);
+            final byte[] result = myLzwDecompressor.decompress(is, expected_size);
 
             return result;
         }
 
         case TIFF_COMPRESSION_PACKBITS: // Packbits
         {
-            byte unpacked[] = new PackBits().decompress(compressed,
+            final byte unpacked[] = new PackBits().decompress(compressed,
                     expected_size);
 
             return unpacked;