This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-imaging.git

commit 01240c4a7a4e3b4bc6e534d60246e9d94dd29670
Author: Gary Gregory <[email protected]>
AuthorDate: Tue May 9 08:45:28 2023 -0400

    Use switch instead of cascading if-else
    
    Use final
    Reduce nesting
    Better lambda
---
 .../java/org/apache/commons/imaging/Imaging.java   |  2 +-
 .../commons/imaging/common/BasicCParser.java       | 52 ++++++++++------------
 .../common/BigEndianBinaryOutputStream.java        |  2 +-
 .../commons/imaging/common/BinaryOutputStream.java |  3 +-
 .../common/LittleEndianBinaryOutputStream.java     |  2 +-
 .../imaging/common/mylzw/MyLzwDecompressor.java    | 20 ++++-----
 .../imaging/formats/bmp/PixelParserRgb.java        | 30 +++++--------
 .../imaging/formats/ico/IcoImageParser.java        | 30 ++++++-------
 .../imaging/formats/jpeg/JpegImageParser.java      | 40 ++++++++++++-----
 .../imaging/formats/pnm/PnmImageParser.java        | 18 ++++----
 .../formats/tiff/write/TiffImageWriterBase.java    | 27 +++++++----
 .../imaging/examples/tiff/ReadTagsAndImages.java   | 10 +++--
 .../imaging/formats/jpeg/exif/TextFieldTest.java   |  6 +--
 .../commons/imaging/formats/png/PngReadTest.java   |  6 +--
 .../imaging/test/util/FileSystemTraversal.java     |  8 ++--
 15 files changed, 131 insertions(+), 125 deletions(-)

diff --git a/src/main/java/org/apache/commons/imaging/Imaging.java 
b/src/main/java/org/apache/commons/imaging/Imaging.java
index 1bf0a079..fd86e310 100644
--- a/src/main/java/org/apache/commons/imaging/Imaging.java
+++ b/src/main/java/org/apache/commons/imaging/Imaging.java
@@ -761,7 +761,7 @@ public final class Imaging {
                 .of(ImageFormats.values())
                 .filter(imageFormat -> Stream
                     .of(imageFormat.getExtensions())
-                    .anyMatch((extension) -> {
+                    .anyMatch(extension -> {
                         final String fileName = byteSource.getFileName();
                         if (fileName == null || fileName.trim().length() == 0) 
{
                             return false;
diff --git a/src/main/java/org/apache/commons/imaging/common/BasicCParser.java 
b/src/main/java/org/apache/commons/imaging/common/BasicCParser.java
index 78a30806..9e1ce784 100644
--- a/src/main/java/org/apache/commons/imaging/common/BasicCParser.java
+++ b/src/main/java/org/apache/commons/imaging/common/BasicCParser.java
@@ -187,10 +187,8 @@ public class BasicCParser {
                         hadStar = false;
                         inComment = false;
                         seenFirstComment = true;
-                    } else {
-                        if (!seenFirstComment) {
-                            firstComment.append((char) c);
-                        }
+                    } else if (!seenFirstComment) {
+                        firstComment.append((char) c);
                     }
                 } else {
                     if (hadStar && !seenFirstComment) {
@@ -382,15 +380,13 @@ public class BasicCParser {
             if (hadBackSlash) {
                 i = parseEscape(i, stringBuilder, string);
                 hadBackSlash = false;
+            } else if (c == '\\') {
+                hadBackSlash = true;
+            } else if (c == '"') {
+                throw new ImageReadException("Parsing XPM file failed, "
+                        + "extra '\"' found in string");
             } else {
-                if (c == '\\') {
-                    hadBackSlash = true;
-                } else if (c == '"') {
-                    throw new ImageReadException("Parsing XPM file failed, "
-                            + "extra '\"' found in string");
-                } else {
-                    stringBuilder.append(c);
-                }
+                stringBuilder.append(c);
             }
         }
         if (hadBackSlash) {
@@ -443,24 +439,22 @@ public class BasicCParser {
                     return token.toString();
                 }
                 token.append((char) c);
+            } else if (c == '"') {
+                token.append('"');
+                inString = true;
+            } else if (Character.isLetterOrDigit(c) || c == '_') {
+                token.append((char) c);
+                inIdentifier = true;
+            } else if (c == '{' || c == '}' || c == '[' || c == ']'
+                    || c == '*' || c == ';' || c == '=' || c == ',') {
+                token.append((char) c);
+                return token.toString();
+            } else if (c == ' ' || c == '\t' || c == '\r' || c == '\n') {
+                // ignore
             } else {
-                if (c == '"') {
-                    token.append('"');
-                    inString = true;
-                } else if (Character.isLetterOrDigit(c) || c == '_') {
-                    token.append((char) c);
-                    inIdentifier = true;
-                } else if (c == '{' || c == '}' || c == '[' || c == ']'
-                        || c == '*' || c == ';' || c == '=' || c == ',') {
-                    token.append((char) c);
-                    return token.toString();
-                } else if (c == ' ' || c == '\t' || c == '\r' || c == '\n') {
-                    // ignore
-                } else {
-                    throw new ImageReadException(
-                            "Unhandled/invalid character '" + ((char) c)
-                                    + "' found in XPM file");
-                }
+                throw new ImageReadException(
+                        "Unhandled/invalid character '" + ((char) c)
+                                + "' found in XPM file");
             }
         }
 
diff --git 
a/src/main/java/org/apache/commons/imaging/common/BigEndianBinaryOutputStream.java
 
b/src/main/java/org/apache/commons/imaging/common/BigEndianBinaryOutputStream.java
index 983c6a14..8d95ab71 100644
--- 
a/src/main/java/org/apache/commons/imaging/common/BigEndianBinaryOutputStream.java
+++ 
b/src/main/java/org/apache/commons/imaging/common/BigEndianBinaryOutputStream.java
@@ -22,7 +22,7 @@ import java.io.OutputStream;
 
 final class BigEndianBinaryOutputStream extends BinaryOutputStream {
 
-    BigEndianBinaryOutputStream(OutputStream os) {
+    BigEndianBinaryOutputStream(final OutputStream os) {
         super(os);
     }
 
diff --git 
a/src/main/java/org/apache/commons/imaging/common/BinaryOutputStream.java 
b/src/main/java/org/apache/commons/imaging/common/BinaryOutputStream.java
index 107b1b4e..641f7c18 100644
--- a/src/main/java/org/apache/commons/imaging/common/BinaryOutputStream.java
+++ b/src/main/java/org/apache/commons/imaging/common/BinaryOutputStream.java
@@ -34,7 +34,8 @@ public abstract class BinaryOutputStream extends 
FilterOutputStream {
         Objects.requireNonNull(byteOrder, "byteOrder");
         if (byteOrder == ByteOrder.LITTLE_ENDIAN) {
             return littleEndian(outputStream);
-        } else if (byteOrder == ByteOrder.BIG_ENDIAN) {
+        }
+        if (byteOrder == ByteOrder.BIG_ENDIAN) {
             return bigEndian(outputStream);
         }
         throw new UnsupportedOperationException(byteOrder.toString());
diff --git 
a/src/main/java/org/apache/commons/imaging/common/LittleEndianBinaryOutputStream.java
 
b/src/main/java/org/apache/commons/imaging/common/LittleEndianBinaryOutputStream.java
index b2ad7aa4..abdf84c3 100644
--- 
a/src/main/java/org/apache/commons/imaging/common/LittleEndianBinaryOutputStream.java
+++ 
b/src/main/java/org/apache/commons/imaging/common/LittleEndianBinaryOutputStream.java
@@ -22,7 +22,7 @@ import java.io.OutputStream;
 
 final class LittleEndianBinaryOutputStream extends BinaryOutputStream {
 
-    LittleEndianBinaryOutputStream(OutputStream os) {
+    LittleEndianBinaryOutputStream(final OutputStream os) {
         super(os);
     }
 
diff --git 
a/src/main/java/org/apache/commons/imaging/common/mylzw/MyLzwDecompressor.java 
b/src/main/java/org/apache/commons/imaging/common/mylzw/MyLzwDecompressor.java
index 1aa607ef..5054e67f 100644
--- 
a/src/main/java/org/apache/commons/imaging/common/mylzw/MyLzwDecompressor.java
+++ 
b/src/main/java/org/apache/commons/imaging/common/mylzw/MyLzwDecompressor.java
@@ -125,18 +125,16 @@ public final class MyLzwDecompressor {
                     break;
                 }
                 writeToResult(baos, stringFromCode(code));
+            } else if (isInTable(code)) {
+                writeToResult(baos, stringFromCode(code));
+
+                addStringToTable(appendBytes(stringFromCode(oldCode),
+                        firstChar(stringFromCode(code))));
             } else {
-                if (isInTable(code)) {
-                    writeToResult(baos, stringFromCode(code));
-
-                    addStringToTable(appendBytes(stringFromCode(oldCode),
-                            firstChar(stringFromCode(code))));
-                } else {
-                    final byte[] outString = 
appendBytes(stringFromCode(oldCode),
-                            firstChar(stringFromCode(oldCode)));
-                    writeToResult(baos, outString);
-                    addStringToTable(outString);
-                }
+                final byte[] outString = appendBytes(stringFromCode(oldCode),
+                        firstChar(stringFromCode(oldCode)));
+                writeToResult(baos, outString);
+                addStringToTable(outString);
             }
             oldCode = code;
 
diff --git 
a/src/main/java/org/apache/commons/imaging/formats/bmp/PixelParserRgb.java 
b/src/main/java/org/apache/commons/imaging/formats/bmp/PixelParserRgb.java
index dd125206..441f6b48 100644
--- a/src/main/java/org/apache/commons/imaging/formats/bmp/PixelParserRgb.java
+++ b/src/main/java/org/apache/commons/imaging/formats/bmp/PixelParserRgb.java
@@ -37,8 +37,9 @@ class PixelParserRgb extends PixelParserSimple {
     @Override
     public int getNextRGB() throws ImageReadException, IOException {
 
-        if ((bhi.bitsPerPixel == 1)
-                || (bhi.bitsPerPixel == 4)) { // always grayscale?
+        switch (bhi.bitsPerPixel) {
+        case 1:
+        case 4: {
             if (cachedBitCount < bhi.bitsPerPixel) {
                 if (cachedBitCount != 0) {
                     throw new ImageReadException("Unexpected leftover bits: "
@@ -53,56 +54,45 @@ class PixelParserRgb extends PixelParserSimple {
             final int sample = cacheMask & (cachedByte >> (8 - 
bhi.bitsPerPixel));
             cachedByte = 0xff & (cachedByte << bhi.bitsPerPixel);
             cachedBitCount -= bhi.bitsPerPixel;
-
             return getColorTableRGB(sample);
         }
-        if (bhi.bitsPerPixel == 8) { // always grayscale?
+        case 8: {
             final int sample = 0xff & imageData[byteCount + 0];
-
             final int rgb = getColorTableRGB(sample);
-
             byteCount += 1;
-
             return rgb;
         }
-        if (bhi.bitsPerPixel == 16) {
+        case 16: {
             final int data = read2Bytes("Pixel", is, "BMP Image Data", 
ByteOrder.LITTLE_ENDIAN);
-
             final int blue = (0x1f & (data >> 0)) << 3;
             final int green = (0x1f & (data >> 5)) << 3;
             final int red = (0x1f & (data >> 10)) << 3;
             final int alpha = 0xff;
-
             final int rgb = (alpha << 24) | (red << 16) | (green << 8) | (blue 
<< 0);
-
             byteCount += 2;
-
             return rgb;
         }
-        if (bhi.bitsPerPixel == 24) {
+        case 24: {
             final int blue = 0xff & imageData[byteCount + 0];
             final int green = 0xff & imageData[byteCount + 1];
             final int red = 0xff & imageData[byteCount + 2];
             final int alpha = 0xff;
-
             final int rgb = (alpha << 24) | (red << 16) | (green << 8) | (blue 
<< 0);
-
             byteCount += 3;
-
             return rgb;
         }
-        if (bhi.bitsPerPixel == 32) {
+        case 32: {
             final int blue = 0xff & imageData[byteCount + 0];
             final int green = 0xff & imageData[byteCount + 1];
             final int red = 0xff & imageData[byteCount + 2];
             final int alpha = 0xff;
-
             final int rgb = (alpha << 24) | (red << 16) | (green << 8) | (blue 
<< 0);
-
             byteCount += 4;
-
             return rgb;
         }
+        default:
+            break;
+        }
 
         throw new ImageReadException("Unknown BitsPerPixel: "
                 + bhi.bitsPerPixel);
diff --git 
a/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java 
b/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java
index c5b15c17..dfe8dca9 100644
--- a/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java
+++ b/src/main/java/org/apache/commons/imaging/formats/ico/IcoImageParser.java
@@ -722,23 +722,21 @@ public class IcoImageParser extends 
ImageParser<IcoImagingParameters> {
                     } else if (bitCount == 32) {
                         bos.write4Bytes(argb);
                     }
-                } else {
-                    if (bitCount < 8) {
-                        final int rgb = 0xffffff & argb;
-                        final int index = palette.getPaletteIndex(rgb);
-                        bitCache <<= bitCount;
-                        bitCache |= index;
-                        bitsInCache += bitCount;
-                        if (bitsInCache >= 8) {
-                            bos.write(0xff & bitCache);
-                            bitCache = 0;
-                            bitsInCache = 0;
-                        }
-                    } else if (bitCount == 8) {
-                        final int rgb = 0xffffff & argb;
-                        final int index = palette.getPaletteIndex(rgb);
-                        bos.write(0xff & index);
+                } else if (bitCount < 8) {
+                    final int rgb = 0xffffff & argb;
+                    final int index = palette.getPaletteIndex(rgb);
+                    bitCache <<= bitCount;
+                    bitCache |= index;
+                    bitsInCache += bitCount;
+                    if (bitsInCache >= 8) {
+                        bos.write(0xff & bitCache);
+                        bitCache = 0;
+                        bitsInCache = 0;
                     }
+                } else if (bitCount == 8) {
+                    final int rgb = 0xffffff & argb;
+                    final int index = palette.getPaletteIndex(rgb);
+                    bos.write(0xff & index);
                 }
             }
 
diff --git 
a/src/main/java/org/apache/commons/imaging/formats/jpeg/JpegImageParser.java 
b/src/main/java/org/apache/commons/imaging/formats/jpeg/JpegImageParser.java
index e5ff874c..ba16d914 100644
--- a/src/main/java/org/apache/commons/imaging/formats/jpeg/JpegImageParser.java
+++ b/src/main/java/org/apache/commons/imaging/formats/jpeg/JpegImageParser.java
@@ -531,16 +531,22 @@ public class JpegImageParser extends 
ImageParser<JpegImagingParameters> implemen
                 boolean haveOther = false;
                 for (final SofnSegment.Component component : 
fSOFNSegment.getComponents()) {
                     final int id = component.componentIdentifier;
-                    if (id == 1) {
+                    switch (id) {
+                    case 1:
                         have1 = true;
-                    } else if (id == 2) {
+                        break;
+                    case 2:
                         have2 = true;
-                    } else if (id == 3) {
+                        break;
+                    case 3:
                         have3 = true;
-                    } else if (id == 4) {
+                        break;
+                    case 4:
                         have4 = true;
-                    } else {
+                        break;
+                    default:
                         haveOther = true;
+                        break;
                     }
                 }
                 if (numberOfComponents == 3 && have1 && have2 && have3 && 
!have4 && !haveOther) {
@@ -558,20 +564,30 @@ public class JpegImageParser extends 
ImageParser<JpegImagingParameters> implemen
                     boolean haveY = false;
                     for (final SofnSegment.Component component : 
fSOFNSegment.getComponents()) {
                         final int id = component.componentIdentifier;
-                        if (id == 'R') {
+                        switch (id) {
+                        case 'R':
                             haveR = true;
-                        } else if (id == 'G') {
+                            break;
+                        case 'G':
                             haveG = true;
-                        } else if (id == 'B') {
+                            break;
+                        case 'B':
                             haveB = true;
-                        } else if (id == 'A') {
+                            break;
+                        case 'A':
                             haveA = true;
-                        } else if (id == 'C') {
+                            break;
+                        case 'C':
                             haveC = true;
-                        } else if (id == 'c') {
+                            break;
+                        case 'c':
                             havec = true;
-                        } else if (id == 'Y') {
+                            break;
+                        case 'Y':
                             haveY = true;
+                            break;
+                        default:
+                            break;
                         }
                     }
                     if (haveR && haveG && haveB && !haveA && !haveC && !havec 
&& !haveY) {
diff --git 
a/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java 
b/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java
index caee4f77..6b023caa 100644
--- a/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java
+++ b/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImageParser.java
@@ -214,28 +214,30 @@ public class PnmImageParser extends 
ImageParser<PnmImagingParameters> {
               throw new ImageReadException("Invalid height specified." , e);
             }
 
-            if (identifier2 == PnmConstants.PBM_TEXT_CODE) {
+            switch (identifier2) {
+            case PnmConstants.PBM_TEXT_CODE:
                 return new PbmFileInfo(width, height, false);
-            }
-            if (identifier2 == PnmConstants.PBM_RAW_CODE) {
+            case PnmConstants.PBM_RAW_CODE:
                 return new PbmFileInfo(width, height, true);
-            }
-            if (identifier2 == PnmConstants.PGM_TEXT_CODE) {
+            case PnmConstants.PGM_TEXT_CODE: {
                 final int maxgray = Integer.parseInt(wsr.readtoWhiteSpace());
                 return new PgmFileInfo(width, height, false, maxgray);
             }
-            if (identifier2 == PnmConstants.PGM_RAW_CODE) {
+            case PnmConstants.PGM_RAW_CODE: {
                 final int maxgray = Integer.parseInt(wsr.readtoWhiteSpace());
                 return new PgmFileInfo(width, height, true, maxgray);
             }
-            if (identifier2 == PnmConstants.PPM_TEXT_CODE) {
+            case PnmConstants.PPM_TEXT_CODE: {
                 final int max = Integer.parseInt(wsr.readtoWhiteSpace());
                 return new PpmFileInfo(width, height, false, max);
             }
-            if (identifier2 == PnmConstants.PPM_RAW_CODE) {
+            case PnmConstants.PPM_RAW_CODE: {
                 final int max = Integer.parseInt(wsr.readtoWhiteSpace());
                 return new PpmFileInfo(width, height, true, max);
             }
+            default:
+                break;
+            }
         } else if (identifier2 == PnmConstants.PAM_RAW_CODE) {
             int width = -1;
             boolean seenWidth = false;
diff --git 
a/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterBase.java
 
b/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterBase.java
index cc924cd7..6a5da9a2 100644
--- 
a/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterBase.java
+++ 
b/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterBase.java
@@ -479,11 +479,13 @@ public abstract class TiffImageWriterBase {
 
         int t4Options = 0;
         int t6Options = 0;
-        if (compression == TIFF_COMPRESSION_CCITT_1D) {
+        switch (compression) {
+        case TIFF_COMPRESSION_CCITT_1D:
             for (int i = 0; i < strips.length; i++) {
                 strips[i] = 
T4AndT6Compression.compressModifiedHuffman(strips[i], width, strips[i].length / 
((width + 7) / 8));
             }
-        } else if (compression == TIFF_COMPRESSION_CCITT_GROUP_3) {
+            break;
+        case TIFF_COMPRESSION_CCITT_GROUP_3: {
             final Integer t4Parameter = params.getT4Options();
             if (t4Parameter != null) {
                 t4Options = t4Parameter.intValue();
@@ -507,7 +509,9 @@ public abstract class TiffImageWriterBase {
                             hasFillBitsBeforeEOL);
                 }
             }
-        } else if (compression == TIFF_COMPRESSION_CCITT_GROUP_4) {
+            break;
+        }
+        case TIFF_COMPRESSION_CCITT_GROUP_4: {
             final Integer t6Parameter = params.getT6Options();
             if (t6Parameter != null) {
                 t6Options = t6Parameter.intValue();
@@ -521,11 +525,14 @@ public abstract class TiffImageWriterBase {
             for (int i = 0; i < strips.length; i++) {
                 strips[i] = T4AndT6Compression.compressT6(strips[i], width, 
strips[i].length / ((width + 7) / 8));
             }
-        } else if (compression == TIFF_COMPRESSION_PACKBITS) {
+            break;
+        }
+        case TIFF_COMPRESSION_PACKBITS:
             for (int i = 0; i < strips.length; i++) {
                 strips[i] = new PackBits().compress(strips[i]);
             }
-        } else if (compression == TIFF_COMPRESSION_LZW) {
+            break;
+        case TIFF_COMPRESSION_LZW:
             predictor =  
TiffTagConstants.PREDICTOR_VALUE_HORIZONTAL_DIFFERENCING;
             for (int i = 0; i < strips.length; i++) {
                 final byte[] uncompressed = strips[i];
@@ -537,15 +544,17 @@ public abstract class TiffImageWriterBase {
                 final byte[] compressed = compressor.compress(uncompressed);
                 strips[i] = compressed;
             }
-        } else if (compression == TIFF_COMPRESSION_DEFLATE_ADOBE) {
+            break;
+        case TIFF_COMPRESSION_DEFLATE_ADOBE:
             predictor = 
TiffTagConstants.PREDICTOR_VALUE_HORIZONTAL_DIFFERENCING;
             for (int i = 0; i < strips.length; i++) {
                 this.applyPredictor(width, samplesPerPixel, strips[i]);
                 strips[i] = ZlibDeflate.compress(strips[i]);
             }
-        } else if (compression == TIFF_COMPRESSION_UNCOMPRESSED) {
-            // do nothing.
-        } else {
+            break;
+        case TIFF_COMPRESSION_UNCOMPRESSED:
+            break;
+        default:
             throw new ImageWriteException(
                     "Invalid compression parameter (Only CCITT 1D/Group 
3/Group 4, LZW, Packbits, Zlib Deflate and uncompressed supported).");
         }
diff --git 
a/src/test/java/org/apache/commons/imaging/examples/tiff/ReadTagsAndImages.java 
b/src/test/java/org/apache/commons/imaging/examples/tiff/ReadTagsAndImages.java
index 5048dbeb..ca509131 100644
--- 
a/src/test/java/org/apache/commons/imaging/examples/tiff/ReadTagsAndImages.java
+++ 
b/src/test/java/org/apache/commons/imaging/examples/tiff/ReadTagsAndImages.java
@@ -304,11 +304,13 @@ public class ReadTagsAndImages {
                 // in original spec was "ProjectedCSTypeGeoKey"
                 if (0 <= valueOrPosition && valueOrPosition <= 1023) {
                     return "Reserved";
-                } else if (1024 <= valueOrPosition && valueOrPosition <= 
32766) {
-                    return "EPSG Code #" + valueOrPosition;
-                } else if (valueOrPosition == 32767) {
-                    return "User-Defined Projection";
                 }
+            if (1024 <= valueOrPosition && valueOrPosition <= 32766) {
+                return "EPSG Code #" + valueOrPosition;
+            }
+            if (valueOrPosition == 32767) {
+                return "User-Defined Projection";
+            }
                 break;
             case ProjectionGeoKey:
                 if(valueOrPosition==32767){
diff --git 
a/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/TextFieldTest.java 
b/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/TextFieldTest.java
index 512defd0..168117f9 100644
--- 
a/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/TextFieldTest.java
+++ 
b/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/TextFieldTest.java
@@ -34,11 +34,9 @@ public class TextFieldTest extends SpecificExifTagTest {
     @Override
     protected void checkField(final File imageFile, final TiffField field)
             throws IOException, ImageReadException, ImageWriteException {
-        if (field.getTag() == ExifTagConstants.EXIF_TAG_USER_COMMENT.tag) {
+        if ((field.getTag() == ExifTagConstants.EXIF_TAG_USER_COMMENT.tag) || 
(field.getTag() == GpsTagConstants.GPS_TAG_GPS_PROCESSING_METHOD.tag
+                && field.getDirectoryType() == 
TiffDirectoryType.EXIF_DIRECTORY_GPS.directoryType)) {
             // do nothing
-        } else if (field.getTag() == 
GpsTagConstants.GPS_TAG_GPS_PROCESSING_METHOD.tag
-                && field.getDirectoryType() == 
TiffDirectoryType.EXIF_DIRECTORY_GPS.directoryType) {
-                // do nothing
         } else if (field.getTag() == 
GpsTagConstants.GPS_TAG_GPS_AREA_INFORMATION.tag
                 && field.getDirectoryType() == 
TiffDirectoryType.EXIF_DIRECTORY_GPS.directoryType) {
                 // do nothing
diff --git 
a/src/test/java/org/apache/commons/imaging/formats/png/PngReadTest.java 
b/src/test/java/org/apache/commons/imaging/formats/png/PngReadTest.java
index bbc063b1..429f2186 100644
--- a/src/test/java/org/apache/commons/imaging/formats/png/PngReadTest.java
+++ b/src/test/java/org/apache/commons/imaging/formats/png/PngReadTest.java
@@ -92,11 +92,11 @@ public class PngReadTest extends PngBaseTest {
         final String file = PngReadTest.class.getResource(input).getFile();
         final PngImageParser parser = new PngImageParser();
 
-        ImageMetadata metadata = parser.getMetadata(new File(file));
-        List<?> items = metadata.getItems();
+        final ImageMetadata metadata = parser.getMetadata(new File(file));
+        final List<?> items = metadata.getItems();
         assertEquals(1, items.size());
 
-        GenericImageMetadata.GenericImageMetadataItem item = 
((GenericImageMetadata.GenericImageMetadataItem) items.get(0));
+        final GenericImageMetadata.GenericImageMetadataItem item = 
((GenericImageMetadata.GenericImageMetadataItem) items.get(0));
         assertEquals("Comment", item.getKeyword());
         assertEquals("\u2192 UTF-8 Test", item.getText());
     }
diff --git 
a/src/test/java/org/apache/commons/imaging/test/util/FileSystemTraversal.java 
b/src/test/java/org/apache/commons/imaging/test/util/FileSystemTraversal.java
index c9d8229d..19bc7c14 100644
--- 
a/src/test/java/org/apache/commons/imaging/test/util/FileSystemTraversal.java
+++ 
b/src/test/java/org/apache/commons/imaging/test/util/FileSystemTraversal.java
@@ -87,11 +87,9 @@ public class FileSystemTraversal {
                     return false;
                 }
             }
-        } else {
-            if (mode == MODE_ALL) {
-                if (!visitor.visit(file, estimate)) {
-                    return false;
-                }
+        } else if (mode == MODE_ALL) {
+            if (!visitor.visit(file, estimate)) {
+                return false;
             }
         }
 

Reply via email to