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
The following commit(s) were added to refs/heads/master by this push: new 714418e8 Clean ups. 714418e8 is described below commit 714418e859300c84b4066eccd9e9a411bff2eee9 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Sat May 21 15:52:29 2022 -0400 Clean ups. - Use the compact array declaration notation - Use final where possible (this was done already but not everywhere) - Remove unused imports - Remove some useless parentheses - Refactor some duplicate code --- pom.xml | 15 ++++ .../org/apache/commons/imaging/ImageFormats.java | 2 +- .../org/apache/commons/imaging/ImageParser.java | 2 +- .../java/org/apache/commons/imaging/Imaging.java | 6 +- .../apache/commons/imaging/ImagingConstants.java | 2 +- .../apache/commons/imaging/ImagingParameters.java | 8 +- .../commons/imaging/common/ByteConversions.java | 4 +- .../commons/imaging/common/RationalNumber.java | 4 +- .../imaging/common/XmpImagingParameters.java | 2 +- .../imaging/common/mylzw/MyLzwDecompressor.java | 5 +- .../imaging/formats/bmp/BmpImageParser.java | 2 +- .../imaging/formats/gif/GifImageParser.java | 2 +- .../imaging/formats/icns/IcnsImageParser.java | 6 +- .../imaging/formats/jpeg/decoder/JpegDecoder.java | 2 +- .../imaging/formats/jpeg/iptc/IptcParser.java | 16 ++-- .../imaging/formats/pcx/PcxImagingParameters.java | 6 +- .../imaging/formats/png/PngImageParser.java | 4 +- .../imaging/formats/png/PngImagingParameters.java | 12 +-- .../commons/imaging/formats/png/PngWriter.java | 6 +- .../commons/imaging/formats/pnm/PamFileInfo.java | 2 +- .../imaging/formats/pnm/PnmImageParser.java | 2 +- .../imaging/formats/pnm/PnmImagingParameters.java | 4 +- .../imaging/formats/psd/ImageResourceType.java | 2 +- .../commons/imaging/formats/rgbe/RgbeInfo.java | 4 +- .../imaging/formats/tiff/TiffImageMetadata.java | 11 +-- .../formats/tiff/TiffImagingParameters.java | 16 ++-- .../imaging/formats/tiff/TiffRasterData.java | 4 +- .../imaging/formats/tiff/TiffRasterDataFloat.java | 28 +++---- .../imaging/formats/tiff/TiffRasterDataInt.java | 28 +++---- .../commons/imaging/formats/tiff/TiffTags.java | 5 +- .../formats/tiff/constants/GpsTagConstants.java | 2 +- .../formats/tiff/datareaders/DataReaderStrips.java | 4 +- .../formats/tiff/datareaders/DataReaderTiled.java | 6 +- .../formats/tiff/datareaders/ImageDataReader.java | 16 ++-- .../formats/tiff/fieldtypes/FieldTypeRational.java | 2 +- .../formats/tiff/write/TiffImageWriterBase.java | 8 +- .../tiff/write/TiffImageWriterLossless.java | 5 +- .../imaging/formats/wbmp/WbmpImageParser.java | 2 +- .../imaging/formats/xbm/XbmImageParser.java | 2 +- .../imaging/formats/xpm/XpmImageParser.java | 7 +- .../org/apache/commons/imaging/internal/Util.java | 10 +-- .../commons/imaging/palette/PaletteFactory.java | 15 +--- .../commons/imaging/common/RationalNumberTest.java | 2 +- .../common/bytesource/ByteSourceImageTest.java | 2 +- .../tiff/ExampleReadFloatingPointData.java | 1 - .../imaging/examples/tiff/ReadTagsAndImages.java | 95 +++++++++++----------- .../commons/imaging/formats/jpeg/JpegReadTest.java | 2 +- .../formats/jpeg/decoder/JpegInputStreamTest.java | 2 +- .../imaging/formats/jpeg/exif/ExifRewriteTest.java | 1 - .../formats/jpeg/exif/MicrosoftTagTest.java | 3 +- .../imaging/formats/jpeg/iptc/IptcParserTest.java | 18 ++-- .../png/PngWithInvalidPngChunkSizeTest.java | 4 +- .../imaging/formats/png/PngWritePredictorTest.java | 24 +++--- .../imaging/formats/png/PngWriteReadTest.java | 2 +- .../formats/tiff/TiffAlphaRoundTripTest.java | 20 ++--- .../imaging/formats/tiff/TiffCcittTest.java | 1 - .../tiff/TiffFloatingPointMultivariableTest.java | 44 +++++----- .../formats/tiff/TiffRasterDataIntTest.java | 6 +- .../imaging/formats/tiff/TiffRasterDataTest.java | 4 +- .../formats/tiff/TiffReadWriteTagsTest.java | 6 +- .../formats/tiff/TiffRoundTripInt32Test.java | 6 +- .../imaging/formats/tiff/TiffRoundtripTest.java | 2 +- .../formats/tiff/TiffShortIntRoundTripTest.java | 6 +- .../PhotometricInterpreterLogLuvTest.java | 2 +- .../PhotometricInterpreterRgbTest.java | 2 +- .../PhotometricInterpreterFloatTest.java | 4 +- .../commons/imaging/formats/xmp/XmpUpdateTest.java | 4 +- .../imaging/roundtrip/BitmapRoundtripTest.java | 2 +- .../commons/imaging/roundtrip/FormatInfo.java | 4 +- .../imaging/roundtrip/FullColorRoundtrip.java | 2 +- .../imaging/roundtrip/GrayscaleRountripTest.java | 2 +- .../roundtrip/LimitedColorRoundtripTest.java | 2 +- .../imaging/roundtrip/PixelDensityRoundtrip.java | 2 +- .../commons/imaging/roundtrip/RoundtripBase.java | 2 +- 74 files changed, 278 insertions(+), 292 deletions(-) diff --git a/pom.xml b/pom.xml index b6d8aa73..38eabf7a 100644 --- a/pom.xml +++ b/pom.xml @@ -460,6 +460,21 @@ <name>Matt Benson</name> <id>mbenson</id> </developer> + <developer> + <id>ggregory</id> + <name>Gary Gregory</name> + <email>ggregory at apache.org</email> + <url>https://www.garygregory.com</url> + <organization>The Apache Software Foundation</organization> + <organizationUrl>https://www.apache.org/</organizationUrl> + <roles> + <role>PMC Member</role> + </roles> + <timezone>America/New_York</timezone> + <properties> + <picUrl>https://people.apache.org/~ggregory/img/garydgregory80.png</picUrl> + </properties> + </developer> </developers> <contributors> diff --git a/src/main/java/org/apache/commons/imaging/ImageFormats.java b/src/main/java/org/apache/commons/imaging/ImageFormats.java index ba6c6b03..2d339749 100644 --- a/src/main/java/org/apache/commons/imaging/ImageFormats.java +++ b/src/main/java/org/apache/commons/imaging/ImageFormats.java @@ -45,7 +45,7 @@ public enum ImageFormats implements ImageFormat { private final String[] extensions; - ImageFormats(String ...extensions) { + ImageFormats(final String ...extensions) { this.extensions = extensions; } diff --git a/src/main/java/org/apache/commons/imaging/ImageParser.java b/src/main/java/org/apache/commons/imaging/ImageParser.java index f2eea728..23cbac55 100644 --- a/src/main/java/org/apache/commons/imaging/ImageParser.java +++ b/src/main/java/org/apache/commons/imaging/ImageParser.java @@ -572,7 +572,7 @@ public abstract class ImageParser<T extends ImagingParameters> extends BinaryFil * @throws IOException In the event of an write error from * the output stream. */ - public void writeImage(final BufferedImage src, final OutputStream os, T params) + public void writeImage(final BufferedImage src, final OutputStream os, final T params) throws ImageWriteException, IOException { os.close(); // we are obligated to close stream. diff --git a/src/main/java/org/apache/commons/imaging/Imaging.java b/src/main/java/org/apache/commons/imaging/Imaging.java index 339f3c1a..1406f07f 100644 --- a/src/main/java/org/apache/commons/imaging/Imaging.java +++ b/src/main/java/org/apache/commons/imaging/Imaging.java @@ -288,7 +288,7 @@ public final class Imaging { } return Stream .of(ImageFormats.values()) - .filter((imageFormat) -> Stream + .filter(imageFormat -> Stream .of(imageFormat.getExtensions()) .anyMatch((extension) -> { final String fileName = byteSource.getFileName(); @@ -793,7 +793,7 @@ public final class Imaging { * @throws ImageReadException in the event of a processing error while reading an image (i.e. a format violation, etc.). * @throws IOException in the event of an unrecoverable I/O exception. */ - public static BufferedImage getBufferedImage(final InputStream is, String fileName) throws ImageReadException, IOException { + public static BufferedImage getBufferedImage(final InputStream is, final String fileName) throws ImageReadException, IOException { return getBufferedImage(new ByteSourceInputStream(is, fileName)); } @@ -912,7 +912,7 @@ public final class Imaging { Objects.requireNonNull(os, "os must not be null"); Objects.requireNonNull(format, "format must not be null"); - ImageParser<?> imageParser = Util.getImageParser(format); + final ImageParser<?> imageParser = Util.getImageParser(format); imageParser.writeImage(src, os, null); } } diff --git a/src/main/java/org/apache/commons/imaging/ImagingConstants.java b/src/main/java/org/apache/commons/imaging/ImagingConstants.java index 44c30893..4499850b 100644 --- a/src/main/java/org/apache/commons/imaging/ImagingConstants.java +++ b/src/main/java/org/apache/commons/imaging/ImagingConstants.java @@ -28,7 +28,7 @@ public final class ImagingConstants { /** * Empty byte array. */ - public static final byte[] EMPTY_BYTE_ARRAY = new byte[0]; + public static final byte[] EMPTY_BYTE_ARRAY = {}; private ImagingConstants() { } diff --git a/src/main/java/org/apache/commons/imaging/ImagingParameters.java b/src/main/java/org/apache/commons/imaging/ImagingParameters.java index 57151b8a..7ef1b3ac 100644 --- a/src/main/java/org/apache/commons/imaging/ImagingParameters.java +++ b/src/main/java/org/apache/commons/imaging/ImagingParameters.java @@ -58,7 +58,7 @@ public class ImagingParameters { return strict; } - public void setStrict(boolean strict) { + public void setStrict(final boolean strict) { this.strict = strict; } @@ -66,7 +66,7 @@ public class ImagingParameters { return fileName; } - public void setFileName(String fileName) { + public void setFileName(final String fileName) { this.fileName = fileName; } @@ -74,7 +74,7 @@ public class ImagingParameters { return bufferedImageFactory; } - public void setBufferedImageFactory(BufferedImageFactory bufferedImageFactory) { + public void setBufferedImageFactory(final BufferedImageFactory bufferedImageFactory) { this.bufferedImageFactory = bufferedImageFactory; } @@ -82,7 +82,7 @@ public class ImagingParameters { return pixelDensity; } - public void setPixelDensity(PixelDensity pixelDensity) { + public void setPixelDensity(final PixelDensity pixelDensity) { this.pixelDensity = pixelDensity; } } diff --git a/src/main/java/org/apache/commons/imaging/common/ByteConversions.java b/src/main/java/org/apache/commons/imaging/common/ByteConversions.java index dd900d3d..043352c9 100644 --- a/src/main/java/org/apache/commons/imaging/common/ByteConversions.java +++ b/src/main/java/org/apache/commons/imaging/common/ByteConversions.java @@ -392,7 +392,7 @@ public final class ByteConversions { public static RationalNumber[] toRationals( final byte[] bytes, final ByteOrder byteOrder, - boolean unsignedType) { + final boolean unsignedType) { return toRationals(bytes, 0, bytes.length, byteOrder, unsignedType); } @@ -401,7 +401,7 @@ public final class ByteConversions { final int offset, final int length, final ByteOrder byteOrder, - boolean unsignedType) { + final boolean unsignedType) { final RationalNumber[] result = new RationalNumber[length / 8]; for (int i = 0; i < result.length; i++) { result[i] = toRational(bytes, offset + 8 * i, byteOrder, unsignedType); diff --git a/src/main/java/org/apache/commons/imaging/common/RationalNumber.java b/src/main/java/org/apache/commons/imaging/common/RationalNumber.java index 3ae186f2..3a2791d2 100644 --- a/src/main/java/org/apache/commons/imaging/common/RationalNumber.java +++ b/src/main/java/org/apache/commons/imaging/common/RationalNumber.java @@ -81,7 +81,7 @@ public class RationalNumber extends Number { * @param unsignedType indicates how numerator and divisor values * are to be interpreted. */ - private RationalNumber(final long numerator, final long divisor, boolean unsignedType){ + private RationalNumber(final long numerator, final long divisor, final boolean unsignedType){ this.numerator = numerator; this.divisor = divisor; this.unsignedType = unsignedType; @@ -149,7 +149,7 @@ public class RationalNumber extends Number { // the unsigned value is so large that the high-order bit is set // it cannot be converted to a negative number. Check to see // whether there is an option to reduce its magnitude. - long g = gcd(numerator, divisor); + final long g = gcd(numerator, divisor); if (g != 0) { n /= g; d /= g; diff --git a/src/main/java/org/apache/commons/imaging/common/XmpImagingParameters.java b/src/main/java/org/apache/commons/imaging/common/XmpImagingParameters.java index 33522744..810b22ab 100644 --- a/src/main/java/org/apache/commons/imaging/common/XmpImagingParameters.java +++ b/src/main/java/org/apache/commons/imaging/common/XmpImagingParameters.java @@ -31,7 +31,7 @@ public class XmpImagingParameters extends ImagingParameters { return xmpXml; } - public void setXmpXml(String xmpXml) { + public void setXmpXml(final String xmpXml) { this.xmpXml = xmpXml; } 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 63b33277..d676871a 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 @@ -164,23 +164,20 @@ public final class MyLzwDecompressor { break; } writeToResult(baos, stringFromCode(code)); - - oldCode = code; } else { if (isInTable(code)) { writeToResult(baos, stringFromCode(code)); addStringToTable(appendBytes(stringFromCode(oldCode), firstChar(stringFromCode(code)))); - oldCode = code; } else { final byte[] outString = appendBytes(stringFromCode(oldCode), firstChar(stringFromCode(oldCode))); writeToResult(baos, outString); addStringToTable(outString); - oldCode = code; } } + oldCode = code; if (written >= expectedLength) { break; diff --git a/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java b/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java index ea956e57..53916e4c 100644 --- a/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/bmp/BmpImageParser.java @@ -654,7 +654,7 @@ public class BmpImageParser extends ImageParser<BmpImagingParameters> { if (params == null) { params = new BmpImagingParameters(); } - PixelDensity pixelDensity = params.getPixelDensity(); + final PixelDensity pixelDensity = params.getPixelDensity(); final SimplePalette palette = new PaletteFactory().makeExactRgbPaletteSimple( src, 256); diff --git a/src/main/java/org/apache/commons/imaging/formats/gif/GifImageParser.java b/src/main/java/org/apache/commons/imaging/formats/gif/GifImageParser.java index 7ba8b4ed..b08ede02 100644 --- a/src/main/java/org/apache/commons/imaging/formats/gif/GifImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/gif/GifImageParser.java @@ -852,7 +852,7 @@ public class GifImageParser extends ImageParser<GifImagingParameters> implements params = new GifImagingParameters(); } - String xmpXml = params.getXmpXml(); + final String xmpXml = params.getXmpXml(); final int width = src.getWidth(); final int height = src.getHeight(); diff --git a/src/main/java/org/apache/commons/imaging/formats/icns/IcnsImageParser.java b/src/main/java/org/apache/commons/imaging/formats/icns/IcnsImageParser.java index 1bf29e8e..659dc171 100644 --- a/src/main/java/org/apache/commons/imaging/formats/icns/IcnsImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/icns/IcnsImageParser.java @@ -81,7 +81,7 @@ public class IcnsImageParser extends ImageParser<IcnsImagingParameters> { } @Override - public ImageInfo getImageInfo(final ByteSource byteSource, IcnsImagingParameters params) + public ImageInfo getImageInfo(final ByteSource byteSource, final IcnsImagingParameters params) throws ImageReadException, IOException { final IcnsContents contents = readImage(byteSource); final List<BufferedImage> images = IcnsDecoder.decodeAllImages(contents.icnsElements); @@ -98,7 +98,7 @@ public class IcnsImageParser extends ImageParser<IcnsImagingParameters> { } @Override - public Dimension getImageSize(final ByteSource byteSource, IcnsImagingParameters params) + public Dimension getImageSize(final ByteSource byteSource, final IcnsImagingParameters params) throws ImageReadException, IOException { final IcnsContents contents = readImage(byteSource); final List<BufferedImage> images = IcnsDecoder.decodeAllImages(contents.icnsElements); @@ -247,7 +247,7 @@ public class IcnsImageParser extends ImageParser<IcnsImagingParameters> { } @Override - public void writeImage(final BufferedImage src, final OutputStream os, IcnsImagingParameters params) + public void writeImage(final BufferedImage src, final OutputStream os, final IcnsImagingParameters params) throws ImageWriteException, IOException { IcnsType imageType; if (src.getWidth() == 16 && src.getHeight() == 16) { diff --git a/src/main/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegDecoder.java b/src/main/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegDecoder.java index 1956625d..b7db94f8 100644 --- a/src/main/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegDecoder.java +++ b/src/main/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegDecoder.java @@ -115,7 +115,7 @@ public class JpegDecoder extends BinaryFileParser implements JpegUtils.Visitor { switch (sofnSegment.numberOfComponents) { case 4: colorModel = new DirectColorModel(24, 0x00ff0000, 0x0000ff00, 0x000000ff); - final int[] bandMasks = new int[] { 0x00ff0000, 0x0000ff00, 0x000000ff }; + final int[] bandMasks = { 0x00ff0000, 0x0000ff00, 0x000000ff }; raster = Raster.createPackedRaster(DataBuffer.TYPE_INT, sofnSegment.width, sofnSegment.height, bandMasks, null); break; case 3: diff --git a/src/main/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParser.java b/src/main/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParser.java index c68b09e0..7029d309 100644 --- a/src/main/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParser.java @@ -431,7 +431,7 @@ public class IptcParser extends BinaryFileParser { bos.write(IptcConstants.IPTC_RECORD_TAG_MARKER); bos.write(IptcConstants.IPTC_ENVELOPE_RECORD_NUMBER); bos.write(ENV_TAG_CODED_CHARACTER_SET); - byte[] codedCharset = CHARACTER_ESCAPE_SEQUENCE; + final byte[] codedCharset = CHARACTER_ESCAPE_SEQUENCE; bos.write2Bytes(codedCharset.length); bos.write(codedCharset); } @@ -485,20 +485,20 @@ public class IptcParser extends BinaryFileParser { return blockData; } - private Charset findCharset(byte[] codedCharset) { - String codedCharsetString = new String(codedCharset, StandardCharsets.ISO_8859_1); + private Charset findCharset(final byte[] codedCharset) { + final String codedCharsetString = new String(codedCharset, StandardCharsets.ISO_8859_1); try { if (Charset.isSupported(codedCharsetString)) { return Charset.forName(codedCharsetString); } - } catch (IllegalArgumentException e) { } + } catch (final IllegalArgumentException e) { } // check if encoding is a escape sequence // normalize encoding byte sequence - byte[] codedCharsetNormalized = new byte[codedCharset.length]; + final byte[] codedCharsetNormalized = new byte[codedCharset.length]; int j = 0; - for (int i = 0; i < codedCharset.length; i++) { - if (codedCharset[i] != ' ') { - codedCharsetNormalized[j++] = codedCharset[i]; + for (final byte element : codedCharset) { + if (element != ' ') { + codedCharsetNormalized[j++] = element; } } diff --git a/src/main/java/org/apache/commons/imaging/formats/pcx/PcxImagingParameters.java b/src/main/java/org/apache/commons/imaging/formats/pcx/PcxImagingParameters.java index 4fdfa6fa..35b221b2 100644 --- a/src/main/java/org/apache/commons/imaging/formats/pcx/PcxImagingParameters.java +++ b/src/main/java/org/apache/commons/imaging/formats/pcx/PcxImagingParameters.java @@ -31,7 +31,7 @@ public class PcxImagingParameters extends ImagingParameters { return planes; } - public void setPlanes(int planes) { + public void setPlanes(final int planes) { this.planes = planes; } @@ -39,7 +39,7 @@ public class PcxImagingParameters extends ImagingParameters { return bitDepth; } - public void setBitDepth(int bitDepth) { + public void setBitDepth(final int bitDepth) { this.bitDepth = bitDepth; } @@ -47,7 +47,7 @@ public class PcxImagingParameters extends ImagingParameters { return compression; } - public void setCompression(int compression) { + public void setCompression(final int compression) { this.compression = compression; } diff --git a/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java b/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java index 327749d4..90a1884b 100644 --- a/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/png/PngImageParser.java @@ -486,7 +486,7 @@ public class PngImageParser extends ImageParser<PngImagingParameters> implement } @Override - public BufferedImage getBufferedImage(final ByteSource byteSource, PngImagingParameters params) + public BufferedImage getBufferedImage(final ByteSource byteSource, final PngImagingParameters params) throws ImageReadException, IOException { final List<PngChunk> chunks = readChunks(byteSource, new ChunkType[] { @@ -578,7 +578,7 @@ public class PngImageParser extends ImageParser<PngImagingParameters> implement try { iccProfile = ICC_Profile.getInstance(bytes); - } catch (IllegalArgumentException iae) { + } catch (final IllegalArgumentException iae) { throw new ImageReadException("The image data does not correspond to a valid ICC Profile", iae); } } else if (gAMAs.size() == 1) { diff --git a/src/main/java/org/apache/commons/imaging/formats/png/PngImagingParameters.java b/src/main/java/org/apache/commons/imaging/formats/png/PngImagingParameters.java index 2127e8d3..0eb6f297 100644 --- a/src/main/java/org/apache/commons/imaging/formats/png/PngImagingParameters.java +++ b/src/main/java/org/apache/commons/imaging/formats/png/PngImagingParameters.java @@ -59,7 +59,7 @@ public class PngImagingParameters extends XmpImagingParameters { return bitDepth; } - public void setBitDepth(byte bitDepth) { + public void setBitDepth(final byte bitDepth) { this.bitDepth = bitDepth; } @@ -67,7 +67,7 @@ public class PngImagingParameters extends XmpImagingParameters { return forceIndexedColor; } - public void setForceIndexedColor(boolean forceIndexedColor) { + public void setForceIndexedColor(final boolean forceIndexedColor) { this.forceIndexedColor = forceIndexedColor; } @@ -75,7 +75,7 @@ public class PngImagingParameters extends XmpImagingParameters { return forceTrueColor; } - public void setForceTrueColor(boolean forceTrueColor) { + public void setForceTrueColor(final boolean forceTrueColor) { this.forceTrueColor = forceTrueColor; } @@ -83,7 +83,7 @@ public class PngImagingParameters extends XmpImagingParameters { return physicalScale; } - public void setPhysicalScale(PhysicalScale physicalScale) { + public void setPhysicalScale(final PhysicalScale physicalScale) { this.physicalScale = physicalScale; } @@ -91,7 +91,7 @@ public class PngImagingParameters extends XmpImagingParameters { return textChunks != null ? Collections.unmodifiableList(textChunks) : null; } - public void setTextChunks(List<? extends PngText> textChunks) { + public void setTextChunks(final List<? extends PngText> textChunks) { this.textChunks = Collections.unmodifiableList(textChunks); } @@ -114,7 +114,7 @@ public class PngImagingParameters extends XmpImagingParameters { * time required to read an image. * @param predictorEnabled true if a predictor is enabled; otherwise, false. */ - public void setPredictorEnabled(boolean predictorEnabled){ + public void setPredictorEnabled(final boolean predictorEnabled){ this.predictorEnabled = predictorEnabled; } } diff --git a/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java b/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java index 93b4795b..58e615da 100644 --- a/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java +++ b/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java @@ -293,7 +293,7 @@ class PngWriter { } private byte getBitDepth(final PngColorType pngColorType, final PngImagingParameters params) { - byte depth = params.getBitDepth(); + final byte depth = params.getBitDepth(); return pngColorType.isBitDepthAllowed(depth) ? depth : PngImagingParameters.DEFAULT_BIT_DEPTH; } @@ -331,7 +331,7 @@ class PngWriter { if (params == null) { params = new PngImagingParameters(); } - int compressionLevel = Deflater.DEFAULT_COMPRESSION; + final int compressionLevel = Deflater.DEFAULT_COMPRESSION; final int width = src.getWidth(); final int height = src.getHeight(); @@ -467,7 +467,7 @@ class PngWriter { // for non-grayscale, true-color images. This choice is made // out of caution and is not necessarily required by the PNG // spec. We may broaden the use of predictors in future versions. - boolean usePredictor = params.isPredictorEnabled() && + final boolean usePredictor = params.isPredictorEnabled() && !isGrayscale && palette==null; byte[] uncompressed; diff --git a/src/main/java/org/apache/commons/imaging/formats/pnm/PamFileInfo.java b/src/main/java/org/apache/commons/imaging/formats/pnm/PamFileInfo.java index 05f4ec4e..88fdc37d 100644 --- a/src/main/java/org/apache/commons/imaging/formats/pnm/PamFileInfo.java +++ b/src/main/java/org/apache/commons/imaging/formats/pnm/PamFileInfo.java @@ -116,7 +116,7 @@ class PamFileInfo extends FileInfo { return tupleReader.getRGB(is); } - private abstract class TupleReader { + private abstract static class TupleReader { public abstract ImageInfo.ColorType getColorType(); public abstract int getRGB(InputStream is) throws IOException; } 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 717d2c47..9d1213a1 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 @@ -317,7 +317,7 @@ public class PnmImageParser extends ImageParser<PnmImagingParameters> { } @Override - public void writeImage(final BufferedImage src, final OutputStream os, PnmImagingParameters params) + public void writeImage(final BufferedImage src, final OutputStream os, final PnmImagingParameters params) throws ImageWriteException, IOException { PnmWriter writer = null; boolean useRawbits = true; diff --git a/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImagingParameters.java b/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImagingParameters.java index 68f1e7cf..6cb95681 100644 --- a/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImagingParameters.java +++ b/src/main/java/org/apache/commons/imaging/formats/pnm/PnmImagingParameters.java @@ -35,7 +35,7 @@ public class PnmImagingParameters extends ImagingParameters { return rawBits; } - public void setRawBits(boolean rawBits) { + public void setRawBits(final boolean rawBits) { this.rawBits = rawBits; } @@ -43,7 +43,7 @@ public class PnmImagingParameters extends ImagingParameters { return subtype; } - public void setSubtype(ImageFormats subtype) { + public void setSubtype(final ImageFormats subtype) { this.subtype = subtype; } } diff --git a/src/main/java/org/apache/commons/imaging/formats/psd/ImageResourceType.java b/src/main/java/org/apache/commons/imaging/formats/psd/ImageResourceType.java index 161bfbde..3ff092e4 100644 --- a/src/main/java/org/apache/commons/imaging/formats/psd/ImageResourceType.java +++ b/src/main/java/org/apache/commons/imaging/formats/psd/ImageResourceType.java @@ -23,7 +23,7 @@ package org.apache.commons.imaging.formats.psd; */ class ImageResourceType { - private static final ImageResourceType[] TYPES = new ImageResourceType[]{ + private static final ImageResourceType[] TYPES = { new ImageResourceType(1000, "Number of channels, rows, columns, depth, and mode."), new ImageResourceType(1001, "Optional. Macintosh print manager print info record"), new ImageResourceType(1003, "Indexed color table."), diff --git a/src/main/java/org/apache/commons/imaging/formats/rgbe/RgbeInfo.java b/src/main/java/org/apache/commons/imaging/formats/rgbe/RgbeInfo.java index 205c4278..dc34a6b2 100644 --- a/src/main/java/org/apache/commons/imaging/formats/rgbe/RgbeInfo.java +++ b/src/main/java/org/apache/commons/imaging/formats/rgbe/RgbeInfo.java @@ -32,7 +32,7 @@ import org.apache.commons.imaging.common.bytesource.ByteSource; class RgbeInfo implements Closeable { // #?RADIANCE - private static final byte[] HEADER = new byte[] { + private static final byte[] HEADER = { 0x23, 0x3F, 0x52, 0x41, 0x44, 0x49, 0x41, 0x4E, 0x43, 0x45 }; private static final Pattern RESOLUTION_STRING = Pattern.compile("-Y (\\d+) \\+X (\\d+)"); @@ -41,7 +41,7 @@ class RgbeInfo implements Closeable { private GenericImageMetadata metadata; private int width = -1; private int height = -1; - private static final byte[] TWO_TWO = new byte[] { 0x2, 0x2 }; + private static final byte[] TWO_TWO = { 0x2, 0x2 }; RgbeInfo(final ByteSource byteSource) throws IOException { this.in = byteSource.getInputStream(); diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java index 5f61d618..c4dcc0f2 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImageMetadata.java @@ -242,14 +242,9 @@ public class TiffImageMetadata extends GenericImageMetadata { } for (final ImageMetadataItem directory1 : directories) { final Directory directory = (Directory) directory1; - if (tagInfo.directoryType.isImageDirectory() - && directory.type >= 0) { - final TiffField field = directory.findField(tagInfo); - if (field != null) { - return field; - } - } else if (!tagInfo.directoryType.isImageDirectory() - && directory.type < 0) { + if ((tagInfo.directoryType.isImageDirectory() + && directory.type >= 0) || (!tagInfo.directoryType.isImageDirectory() + && directory.type < 0)) { final TiffField field = directory.findField(tagInfo); if (field != null) { return field; diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImagingParameters.java b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImagingParameters.java index 8a706f52..bb64fddf 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImagingParameters.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffImagingParameters.java @@ -103,7 +103,7 @@ public class TiffImagingParameters extends XmpImagingParameters { return readThumbnails; } - public void setReadThumbnails(boolean readThumbnails) { + public void setReadThumbnails(final boolean readThumbnails) { this.readThumbnails = readThumbnails; } @@ -122,7 +122,7 @@ public class TiffImagingParameters extends XmpImagingParameters { * * @param tiffOutputSet A valid instance. */ - public void setOutputSet(TiffOutputSet tiffOutputSet) { + public void setOutputSet(final TiffOutputSet tiffOutputSet) { this.tiffOutputSet = tiffOutputSet; } @@ -143,7 +143,7 @@ public class TiffImagingParameters extends XmpImagingParameters { * @param height height of the image subset to be read, must be greater than * zero. */ - public void setSubImage(int x, int y, int width, int height) { + public void setSubImage(final int x, final int y, final int width, final int height) { if (x < 0 || y < 0) { throw new IllegalArgumentException( "Invalid sub-image specification: negative x and y values not allowed"); @@ -222,7 +222,7 @@ public class TiffImagingParameters extends XmpImagingParameters { return customPhotometricInterpreter; } - public void setCustomPhotometricInterpreter(PhotometricInterpreter customPhotometricInterpreter) { + public void setCustomPhotometricInterpreter(final PhotometricInterpreter customPhotometricInterpreter) { this.customPhotometricInterpreter = customPhotometricInterpreter; } @@ -230,7 +230,7 @@ public class TiffImagingParameters extends XmpImagingParameters { return compression; } - public void setCompression(Integer compression) { + public void setCompression(final Integer compression) { this.compression = compression; } @@ -238,7 +238,7 @@ public class TiffImagingParameters extends XmpImagingParameters { return lzwCompressionBlockSize; } - public void setLzwCompressionBlockSize(Integer lzwCompressionBlockSize) { + public void setLzwCompressionBlockSize(final Integer lzwCompressionBlockSize) { this.lzwCompressionBlockSize = lzwCompressionBlockSize; } @@ -246,7 +246,7 @@ public class TiffImagingParameters extends XmpImagingParameters { return t4Options; } - public void setT4Options(Integer t4Options) { + public void setT4Options(final Integer t4Options) { this.t4Options = t4Options; } @@ -254,7 +254,7 @@ public class TiffImagingParameters extends XmpImagingParameters { return t6Options; } - public void setT6Options(Integer t6Options) { + public void setT6Options(final Integer t6Options) { this.t6Options = t6Options; } diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterData.java b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterData.java index e6a9a8dc..85de0b80 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterData.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterData.java @@ -55,7 +55,7 @@ public abstract class TiffRasterData { * @param height a value of 1 or greater * @param samplesPerPixel a value of 1 or greater */ - public TiffRasterData(final int width, final int height, int samplesPerPixel) { + public TiffRasterData(final int width, final int height, final int samplesPerPixel) { if (width <= 0 || height <= 0) { throw new IllegalArgumentException( "Raster dimensions less than or equal to zero are not supported"); @@ -71,7 +71,7 @@ public abstract class TiffRasterData { planarOffset = width * height; } - protected final int checkCoordinatesAndComputeIndex(final int x, final int y, int i) { + protected final int checkCoordinatesAndComputeIndex(final int x, final int y, final int i) { if (x < 0 || x >= width || y < 0 || y >= height) { throw new IllegalArgumentException( "Coordinates out of range (" + x + ", " + y + ")"); diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataFloat.java b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataFloat.java index 6737c021..5db42808 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataFloat.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataFloat.java @@ -63,7 +63,7 @@ public class TiffRasterDataFloat extends TiffRasterData { * @param height a value of 1 or greater * @param samplesPerPixel a value of 1 or greater */ - public TiffRasterDataFloat(final int width, final int height, int samplesPerPixel) { + public TiffRasterDataFloat(final int width, final int height, final int samplesPerPixel) { super(width, height, samplesPerPixel); data = new float[nCells]; } @@ -93,7 +93,7 @@ public class TiffRasterDataFloat extends TiffRasterData { * @param samplesPerCell the number of samples per pixel * @param data the data to be stored in the raster. */ - public TiffRasterDataFloat(final int width, final int height, int samplesPerCell, final float[] data) { + public TiffRasterDataFloat(final int width, final int height, final int samplesPerCell, final float[] data) { super(width, height, samplesPerCell); if (data == null || data.length < nCells) { @@ -123,7 +123,7 @@ public class TiffRasterDataFloat extends TiffRasterData { */ @Override public void setValue(final int x, final int y, final float value) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); data[index] = value; } @@ -138,8 +138,8 @@ public class TiffRasterDataFloat extends TiffRasterData { * potentially a Float.NaN. */ @Override - public void setValue(final int x, final int y, int i, final float value) { - int index = checkCoordinatesAndComputeIndex(x, y, i); + public void setValue(final int x, final int y, final int i, final float value) { + final int index = checkCoordinatesAndComputeIndex(x, y, i); data[index] = value; } @@ -153,7 +153,7 @@ public class TiffRasterDataFloat extends TiffRasterData { */ @Override public float getValue(final int x, final int y) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); return data[index]; } @@ -168,8 +168,8 @@ public class TiffRasterDataFloat extends TiffRasterData { * Float.NaN. */ @Override - public float getValue(final int x, final int y, int i) { - int index = checkCoordinatesAndComputeIndex(x, y, i); + public float getValue(final int x, final int y, final int i) { + final int index = checkCoordinatesAndComputeIndex(x, y, i); return data[index]; } @@ -182,7 +182,7 @@ public class TiffRasterDataFloat extends TiffRasterData { */ @Override public void setIntValue(final int x, final int y, final int value) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); data[index] = value; } @@ -196,8 +196,8 @@ public class TiffRasterDataFloat extends TiffRasterData { * @param value the value to be stored at the specified location */ @Override - public void setIntValue(final int x, final int y, int i, final int value) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + public void setIntValue(final int x, final int y, final int i, final int value) { + final int index = checkCoordinatesAndComputeIndex(x, y, 0); data[index] = value; } @@ -210,7 +210,7 @@ public class TiffRasterDataFloat extends TiffRasterData { */ @Override public int getIntValue(final int x, final int y) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); return (int) data[index]; } @@ -224,8 +224,8 @@ public class TiffRasterDataFloat extends TiffRasterData { * @return the value stored at the specified location */ @Override - public int getIntValue(final int x, final int y, int i) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + public int getIntValue(final int x, final int y, final int i) { + final int index = checkCoordinatesAndComputeIndex(x, y, 0); return (int) data[index]; } diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataInt.java b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataInt.java index 7266a29c..8a355418 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataInt.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataInt.java @@ -61,7 +61,7 @@ public class TiffRasterDataInt extends TiffRasterData { * @param height a value of 1 or greater * @param samplesPerPixel a value of 1 or greater */ - public TiffRasterDataInt(final int width, final int height, int samplesPerPixel) { + public TiffRasterDataInt(final int width, final int height, final int samplesPerPixel) { super(width, height, samplesPerPixel); data = new int[nCells]; } @@ -91,7 +91,7 @@ public class TiffRasterDataInt extends TiffRasterData { * @param samplesPerPixel a value of 1 or greater * @param data the data to be stored in the raster. */ - public TiffRasterDataInt(final int width, final int height, int samplesPerPixel, final int[] data) { + public TiffRasterDataInt(final int width, final int height, final int samplesPerPixel, final int[] data) { super(width, height, samplesPerPixel); if (data == null || data.length < nCells) { @@ -121,7 +121,7 @@ public class TiffRasterDataInt extends TiffRasterData { */ @Override public void setValue(final int x, final int y, final float value) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); data[index] = (int) value; } @@ -136,8 +136,8 @@ public class TiffRasterDataInt extends TiffRasterData { * potentially a Float.NaN. */ @Override - public void setValue(final int x, final int y, int i, final float value) { - int index = checkCoordinatesAndComputeIndex(x, y, i); + public void setValue(final int x, final int y, final int i, final float value) { + final int index = checkCoordinatesAndComputeIndex(x, y, i); data[index] = (int) value; } @@ -151,7 +151,7 @@ public class TiffRasterDataInt extends TiffRasterData { */ @Override public float getValue(final int x, final int y) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); return data[index]; } @@ -166,8 +166,8 @@ public class TiffRasterDataInt extends TiffRasterData { * Float.NaN. */ @Override - public float getValue(final int x, final int y, int i) { - int index = checkCoordinatesAndComputeIndex(x, y, i); + public float getValue(final int x, final int y, final int i) { + final int index = checkCoordinatesAndComputeIndex(x, y, i); return data[index]; } @@ -180,7 +180,7 @@ public class TiffRasterDataInt extends TiffRasterData { */ @Override public void setIntValue(final int x, final int y, final int value) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); data[index] = value; } @@ -194,8 +194,8 @@ public class TiffRasterDataInt extends TiffRasterData { * @param value the value to be stored at the specified location */ @Override - public void setIntValue(final int x, final int y, int i, final int value) { - int index = checkCoordinatesAndComputeIndex(x, y, i); + public void setIntValue(final int x, final int y, final int i, final int value) { + final int index = checkCoordinatesAndComputeIndex(x, y, i); data[index] = value; } @@ -208,7 +208,7 @@ public class TiffRasterDataInt extends TiffRasterData { */ @Override public int getIntValue(final int x, final int y) { - int index = checkCoordinatesAndComputeIndex(x, y, 0); + final int index = checkCoordinatesAndComputeIndex(x, y, 0); return data[index]; } @@ -222,8 +222,8 @@ public class TiffRasterDataInt extends TiffRasterData { * @return the value stored at the specified location */ @Override - public int getIntValue(final int x, final int y, int i) { - int index = checkCoordinatesAndComputeIndex(x, y, i); + public int getIntValue(final int x, final int y, final int i) { + final int index = checkCoordinatesAndComputeIndex(x, y, i); return data[index]; } diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffTags.java b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffTags.java index 49014333..7027b6e5 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/TiffTags.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/TiffTags.java @@ -54,8 +54,7 @@ final class TiffTags { private static final Map<Integer, Integer> TAG_COUNTS = countTags(TiffTags.ALL_TAGS); private static List<TagInfo> makeMergedTagList() { - final ArrayList<TagInfo> result = new ArrayList<>(); - result.addAll(AdobePageMaker6TagConstants.ALL_ADOBE_PAGEMAKER_6_TAGS); + final ArrayList<TagInfo> result = new ArrayList<>(AdobePageMaker6TagConstants.ALL_ADOBE_PAGEMAKER_6_TAGS); result.addAll(AdobePhotoshopTagConstants.ALL_ADOBE_PHOTOSHOP_TAGS); result.addAll(AliasSketchbookProTagConstants.ALL_ALIAS_SKETCHBOOK_PRO_TAGS); result.addAll(DcfTagConstants.ALL_DCF_TAGS); @@ -84,7 +83,7 @@ final class TiffTags { final Map<Integer, List<TagInfo>> map = new HashMap<>(); for (final TagInfo tag : tags) { - List<TagInfo> tagList = map.computeIfAbsent(tag.tag, k -> new ArrayList<>()); + final List<TagInfo> tagList = map.computeIfAbsent(tag.tag, k -> new ArrayList<>()); tagList.add(tag); } diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/constants/GpsTagConstants.java b/src/main/java/org/apache/commons/imaging/formats/tiff/constants/GpsTagConstants.java index 598374ed..ff759570 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/constants/GpsTagConstants.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/constants/GpsTagConstants.java @@ -35,7 +35,7 @@ public final class GpsTagConstants { "GPSVersionID", 0x0000, 4, TiffDirectoryType.EXIF_DIRECTORY_GPS); - private static final byte[] GPS_VERSION = new byte[] { (byte)2, (byte)3, (byte)0, (byte)0 }; + private static final byte[] GPS_VERSION = { (byte)2, (byte)3, (byte)0, (byte)0 }; public static byte[] gpsVersion() { return GPS_VERSION.clone(); diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderStrips.java b/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderStrips.java index 33b87096..fea2eb39 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderStrips.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderStrips.java @@ -373,7 +373,7 @@ public final class DataReaderStrips extends ImageDataReader { rasterHeight = height; } - float[] rasterDataFloat = new float[rasterWidth * rasterHeight * samplesPerPixel]; + final float[] rasterDataFloat = new float[rasterWidth * rasterHeight * samplesPerPixel]; // the legacy code is optimized to the reading of whole // strips (except for the last strip in the image, which can @@ -426,7 +426,7 @@ public final class DataReaderStrips extends ImageDataReader { rasterHeight = height; } - int[] rasterDataInt = new int[rasterWidth * rasterHeight]; + final int[] rasterDataInt = new int[rasterWidth * rasterHeight]; // the legacy code is optimized to the reading of whole // strips (except for the last strip in the image, which can diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderTiled.java b/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderTiled.java index 4da62843..a1374848 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderTiled.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/DataReaderTiled.java @@ -107,7 +107,7 @@ public final class DataReaderTiled extends ImageDataReader { final int rowOffset = row * tileWidth; for (int j = j0; j < j1; j++) { final int column = j - startX; - int k = (rowOffset + column) * samplesPerPixel; + final int k = (rowOffset + column) * samplesPerPixel; samples[0] = b[k]; photometricInterpreter.interpretPixel( imageBuilder, samples, j, i); @@ -313,7 +313,7 @@ public final class DataReaderTiled extends ImageDataReader { rasterWidth = width; rasterHeight = height; } - float[] rasterDataFloat = new float[rasterWidth * rasterHeight * samplesPerPixel]; + final float[] rasterDataFloat = new float[rasterWidth * rasterHeight * samplesPerPixel]; // tileWidth is the width of the tile // tileLength is the height of the tile @@ -365,7 +365,7 @@ public final class DataReaderTiled extends ImageDataReader { rasterWidth = width; rasterHeight = height; } - int[] rasterDataInt = new int[rasterWidth * rasterHeight]; + final int[] rasterDataInt = new int[rasterWidth * rasterHeight]; // tileWidth is the width of the tile // tileLength is the height of the tile diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/ImageDataReader.java b/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/ImageDataReader.java index 242b1261..95fdf1f6 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/ImageDataReader.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/datareaders/ImageDataReader.java @@ -466,8 +466,8 @@ public abstract class ImageDataReader { } else { final int bytesInRow = scanSize * 4; for (int iPlane = 0; iPlane < samplesPerPixel; iPlane++) { - int planarIntOffset = iPlane * length * scanSize; - int planarByteOffset = planarIntOffset * 4; + final int planarIntOffset = iPlane * length * scanSize; + final int planarByteOffset = planarIntOffset * 4; for (int i = 0; i < length; i++) { final int aOffset = i * bytesInRow + planarByteOffset; @@ -631,11 +631,11 @@ public abstract class ImageDataReader { // The logic that follows is simplified by the fact that // the existing API only supports two-byte signed integers. - boolean useDifferencing + final boolean useDifferencing = predictor == TiffTagConstants.PREDICTOR_VALUE_HORIZONTAL_DIFFERENCING; for (int i = 0; i < length; i++) { - int index = i * scanSize; + final int index = i * scanSize; int offset = index * bytesPerSample; if (bitsPerSample == 16) { if (byteOrder == ByteOrder.LITTLE_ENDIAN) { @@ -696,7 +696,7 @@ public abstract class ImageDataReader { void transferBlockToRaster(final int xBlock, final int yBlock, final int blockWidth, final int blockHeight, final int[] blockData, final int xRaster, final int yRaster, - final int rasterWidth, final int rasterHeight, int samplesPerPixel, + final int rasterWidth, final int rasterHeight, final int samplesPerPixel, final float[] rasterData) { // xR0, yR0 are the coordinates within the raster (upper-left corner) @@ -769,7 +769,7 @@ public abstract class ImageDataReader { // The source data is in the interleaved (Chunky) order, // but the TiffRasterData class expects non-interleaved order. // So we transcribe the elements as appropriate. - int pixelsPerPlane = rasterWidth * rasterHeight; + final int pixelsPerPlane = rasterWidth * rasterHeight; for (int i = 0; i < h; i++) { final int yR = yR0 + i; final int yB = yB0 + i; @@ -784,8 +784,8 @@ public abstract class ImageDataReader { } } else { for (int iPlane = 0; iPlane < samplesPerPixel; iPlane++) { - int rPlanarOffset = iPlane * rasterWidth * rasterHeight; - int bPlanarOffset = iPlane * blockWidth * blockHeight; + final int rPlanarOffset = iPlane * rasterWidth * rasterHeight; + final int bPlanarOffset = iPlane * blockWidth * blockHeight; for (int i = 0; i < h; i++) { final int yR = yR0 + i; final int yB = yB0 + i; diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/fieldtypes/FieldTypeRational.java b/src/main/java/org/apache/commons/imaging/formats/tiff/fieldtypes/FieldTypeRational.java index 644964c3..cf2e8d6c 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/fieldtypes/FieldTypeRational.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/fieldtypes/FieldTypeRational.java @@ -31,7 +31,7 @@ public class FieldTypeRational extends FieldType { @Override public Object getValue(final TiffField entry) { final byte[] bytes = entry.getByteArrayValue(); - boolean unsignedType = entry.getFieldType() != SRATIONAL; + final boolean unsignedType = entry.getFieldType() != SRATIONAL; if (entry.getCount() == 1) { return ByteConversions.toRational( bytes, 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 f79b3551..97a0dd7d 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 @@ -300,11 +300,11 @@ public abstract class TiffImageWriterBase { } } - public void writeImage(final BufferedImage src, final OutputStream os, TiffImagingParameters params) + public void writeImage(final BufferedImage src, final OutputStream os, final TiffImagingParameters params) throws ImageWriteException, IOException { - TiffOutputSet userExif = params.getOutputSet(); + final TiffOutputSet userExif = params.getOutputSet(); - String xmpXml = params.getXmpXml(); + final String xmpXml = params.getXmpXml(); PixelDensity pixelDensity = params.getPixelDensity(); if (pixelDensity == null) { @@ -339,7 +339,7 @@ public abstract class TiffImageWriterBase { short predictor = TiffTagConstants.PREDICTOR_VALUE_NONE; int stripSizeInBits = 64000; // the default from legacy implementation - Integer compressionParameter = params.getCompression(); + final Integer compressionParameter = params.getCompression(); if (compressionParameter != null) { compression = compressionParameter; final Integer stripSizeInBytes = params.getLzwCompressionBlockSize(); diff --git a/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterLossless.java b/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterLossless.java index 7f1b9216..b305ce04 100644 --- a/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterLossless.java +++ b/src/main/java/org/apache/commons/imaging/formats/tiff/write/TiffImageWriterLossless.java @@ -110,15 +110,12 @@ public class TiffImageWriterLossless extends TiffImageWriterBase { final long lastElementByte = element.offset + element.length; if (start == null) { start = element; - index = lastElementByte; } else if (element.offset - index > TOLERANCE) { rewritableElements.add(new TiffElement.Stub(start.offset, (int) (index - start.offset))); start = element; - index = lastElementByte; - } else { - index = lastElementByte; } + index = lastElementByte; } if (null != start) { rewritableElements.add(new TiffElement.Stub(start.offset, diff --git a/src/main/java/org/apache/commons/imaging/formats/wbmp/WbmpImageParser.java b/src/main/java/org/apache/commons/imaging/formats/wbmp/WbmpImageParser.java index 9e265912..070ef7da 100644 --- a/src/main/java/org/apache/commons/imaging/formats/wbmp/WbmpImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/wbmp/WbmpImageParser.java @@ -218,7 +218,7 @@ public class WbmpImageParser extends ImageParser<WbmpImagingParameters> { } @Override - public void writeImage(final BufferedImage src, final OutputStream os, WbmpImagingParameters params) + public void writeImage(final BufferedImage src, final OutputStream os, final WbmpImagingParameters params) throws ImageWriteException, IOException { writeMultiByteInteger(os, 0); // typeField os.write(0); // fixHeaderField diff --git a/src/main/java/org/apache/commons/imaging/formats/xbm/XbmImageParser.java b/src/main/java/org/apache/commons/imaging/formats/xbm/XbmImageParser.java index b0eaab7e..e04c2820 100644 --- a/src/main/java/org/apache/commons/imaging/formats/xbm/XbmImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/xbm/XbmImageParser.java @@ -342,7 +342,7 @@ public class XbmImageParser extends ImageParser<XbmImagingParameters> { } @Override - public void writeImage(final BufferedImage src, final OutputStream os, XbmImagingParameters params) + public void writeImage(final BufferedImage src, final OutputStream os, final XbmImagingParameters params) throws ImageWriteException, IOException { final String name = randomName(); diff --git a/src/main/java/org/apache/commons/imaging/formats/xpm/XpmImageParser.java b/src/main/java/org/apache/commons/imaging/formats/xpm/XpmImageParser.java index 4c3e85e7..93d8ee83 100644 --- a/src/main/java/org/apache/commons/imaging/formats/xpm/XpmImageParser.java +++ b/src/main/java/org/apache/commons/imaging/formats/xpm/XpmImageParser.java @@ -379,10 +379,7 @@ public class XpmImageParser extends ImageParser<XpmImagingParameters> { } else if ("g".equals(key)) { paletteEntry.grayArgb = parseColor(color); paletteEntry.haveGray = true; - } else if ("s".equals(key)) { - paletteEntry.colorArgb = parseColor(color); - paletteEntry.haveColor = true; - } else if ("c".equals(key)) { + } else if ("s".equals(key) || "c".equals(key)) { paletteEntry.colorArgb = parseColor(color); paletteEntry.haveColor = true; } @@ -647,7 +644,7 @@ public class XpmImageParser extends ImageParser<XpmImagingParameters> { } @Override - public void writeImage(final BufferedImage src, final OutputStream os, XpmImagingParameters params) + public void writeImage(final BufferedImage src, final OutputStream os, final XpmImagingParameters params) throws ImageWriteException, IOException { final PaletteFactory paletteFactory = new PaletteFactory(); final boolean hasTransparency = paletteFactory.hasTransparency(src, 1); diff --git a/src/main/java/org/apache/commons/imaging/internal/Util.java b/src/main/java/org/apache/commons/imaging/internal/Util.java index 995ea2d6..7c02baad 100644 --- a/src/main/java/org/apache/commons/imaging/internal/Util.java +++ b/src/main/java/org/apache/commons/imaging/internal/Util.java @@ -35,17 +35,17 @@ public class Util { private Util() {} - public static ImageParser<?> getImageParser(ImageFormat format) { - return getImageParser((parser) -> parser.canAcceptType(format), () -> new IllegalArgumentException("Unknown Format: " + format)); + public static ImageParser<?> getImageParser(final ImageFormat format) { + return getImageParser(parser -> parser.canAcceptType(format), () -> new IllegalArgumentException("Unknown Format: " + format)); } - public static ImageParser<?> getImageParser(String fileExtension) { - return getImageParser((parser) -> parser.canAcceptExtension(fileExtension), () -> new IllegalArgumentException("Unknown Extension: " + fileExtension)); + public static ImageParser<?> getImageParser(final String fileExtension) { + return getImageParser(parser -> parser.canAcceptExtension(fileExtension), () -> new IllegalArgumentException("Unknown Extension: " + fileExtension)); } // This generics suppression is as good as the predicate given. If the predicate violates a generics design, // then there will be an error during runtime. - private static ImageParser<?> getImageParser(Predicate<ImageParser<?>> pred, Supplier<? extends RuntimeException> supplier) { + private static ImageParser<?> getImageParser(final Predicate<ImageParser<?>> pred, final Supplier<? extends RuntimeException> supplier) { return (ImageParser<?>) ImageParser .getAllImageParsers() .stream() diff --git a/src/main/java/org/apache/commons/imaging/palette/PaletteFactory.java b/src/main/java/org/apache/commons/imaging/palette/PaletteFactory.java index 99ae0060..2c0ceb0f 100644 --- a/src/main/java/org/apache/commons/imaging/palette/PaletteFactory.java +++ b/src/main/java/org/apache/commons/imaging/palette/PaletteFactory.java @@ -220,9 +220,8 @@ public class PaletteFactory { private DivisionCandidate divideSubset2(final int[] table, final ColorSpaceSubset subset, final int precision) { - final List<DivisionCandidate> dcs = new ArrayList<>(); + final List<DivisionCandidate> dcs = new ArrayList<>(divideSubset2(table, subset, 0, precision)); - dcs.addAll(divideSubset2(table, subset, 0, precision)); dcs.addAll(divideSubset2(table, subset, 1, precision)); dcs.addAll(divideSubset2(table, subset, 2, precision)); @@ -238,10 +237,7 @@ public class PaletteFactory { final int diff = Math.abs(area1 - area2); final double score = ((double) diff) / ((double) Math.max(area1, area2)); - if (bestV == null) { - bestV = dc; - bestScore = score; - } else if (score < bestScore) { + if (bestV == null || score < bestScore) { bestV = dc; bestScore = score; } @@ -277,10 +273,7 @@ public class PaletteFactory { } final int area = subset.total; - if (maxSubset == null) { - maxSubset = subset; - maxArea = area; - } else if (area > maxArea) { + if (maxSubset == null || area > maxArea) { maxSubset = subset; maxArea = area; } @@ -328,7 +321,7 @@ public class PaletteFactory { final int width = src.getWidth(); final int height = src.getHeight(); - List<ColorSpaceSubset> subsets = new ArrayList<>(); + final List<ColorSpaceSubset> subsets = new ArrayList<>(); final ColorSpaceSubset all = new ColorSpaceSubset(width * height, precision); subsets.add(all); diff --git a/src/test/java/org/apache/commons/imaging/common/RationalNumberTest.java b/src/test/java/org/apache/commons/imaging/common/RationalNumberTest.java index 40cb1af5..8f40bd71 100644 --- a/src/test/java/org/apache/commons/imaging/common/RationalNumberTest.java +++ b/src/test/java/org/apache/commons/imaging/common/RationalNumberTest.java @@ -126,7 +126,7 @@ public class RationalNumberTest extends ImagingTest { @Test public void testSpecialRationalNumber(){ - RationalNumber test = new RationalNumber(0xF5937B1F, 70_000_000, true); + final RationalNumber test = new RationalNumber(0xF5937B1F, 70_000_000, true); assertEquals(58.858331871428570, test.doubleValue(), 1.0e-14, "Unsigned integer support failed for double conversion"); assertEquals(58.858334f, test.floatValue(), 1.0e-6f, "Float conversion failed"); assertEquals(58L, test.longValue(), "Long value conversion failed"); diff --git a/src/test/java/org/apache/commons/imaging/common/bytesource/ByteSourceImageTest.java b/src/test/java/org/apache/commons/imaging/common/bytesource/ByteSourceImageTest.java index d839ed38..e8fc0658 100644 --- a/src/test/java/org/apache/commons/imaging/common/bytesource/ByteSourceImageTest.java +++ b/src/test/java/org/apache/commons/imaging/common/bytesource/ByteSourceImageTest.java @@ -172,7 +172,7 @@ public class ByteSourceImageTest extends ByteSourceTest { params = new JpegImagingParameters(); } - ImageParser imageParser = Util.getImageParser(imageFormat); + final ImageParser imageParser = Util.getImageParser(imageFormat); final ImageInfo imageInfoFile = imageParser.getImageInfo(imageFile, params); diff --git a/src/test/java/org/apache/commons/imaging/examples/tiff/ExampleReadFloatingPointData.java b/src/test/java/org/apache/commons/imaging/examples/tiff/ExampleReadFloatingPointData.java index 255e962c..db95b225 100644 --- a/src/test/java/org/apache/commons/imaging/examples/tiff/ExampleReadFloatingPointData.java +++ b/src/test/java/org/apache/commons/imaging/examples/tiff/ExampleReadFloatingPointData.java @@ -29,7 +29,6 @@ import org.apache.commons.imaging.FormatCompliance; import org.apache.commons.imaging.ImageReadException; import org.apache.commons.imaging.common.ImageBuilder; import org.apache.commons.imaging.common.bytesource.ByteSourceFile; -import org.apache.commons.imaging.formats.jpeg.JpegImagingParameters; import org.apache.commons.imaging.formats.tiff.TiffContents; import org.apache.commons.imaging.formats.tiff.TiffDirectory; import org.apache.commons.imaging.formats.tiff.TiffImagingParameters; 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 e53ca018..9e90136c 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 @@ -26,7 +26,6 @@ import javax.imageio.ImageIO; import org.apache.commons.imaging.FormatCompliance; import org.apache.commons.imaging.ImageReadException; import org.apache.commons.imaging.common.bytesource.ByteSourceFile; -import org.apache.commons.imaging.formats.jpeg.JpegImagingParameters; import org.apache.commons.imaging.formats.tiff.TiffContents; import org.apache.commons.imaging.formats.tiff.TiffDirectory; import org.apache.commons.imaging.formats.tiff.TiffField; @@ -72,7 +71,7 @@ public class ReadTagsAndImages { // For brevity, map System.out to a PrintStream reference. // In the future, this might also be used for writing to a text file // rather than standard output. - PrintStream ps = System.out; + final PrintStream ps = System.out; final File target = new File(args[0]); String rootName = null; @@ -156,13 +155,13 @@ public class ReadTagsAndImages { // See also: // Open Geospatial Consortium [OGC] (2019) OGC GeoTIFF Standard Version 1.1 // http://www.opengis.net/doc/IS/GeoTIFF/1.1 - + enum GeoKey{ // From 6.2.1 GeoTiff Configuration Keys GTModelTypeGeoKey( 1024), /* Section 6.3.1.1 Codes */ GTRasterTypeGeoKey( 1025), /* Section 6.3.1.2 Codes */ GTCitationGeoKey( 1026), /* documentation */ - + // From 6.2.2 Geographic Coordinate System Parameter Keys GeographicTypeGeoKey( 2048), /* Section 6.3.2.1 Codes */ GeogCitationGeoKey( 2049), /* documentation */ @@ -178,7 +177,7 @@ public class ReadTagsAndImages { GeogInvFlatteningGeoKey( 2059), /* ratio */ GeogAzimuthUnitsGeoKey( 2060), /* Section 6.3.1.4 Codes */ GeogPrimeMeridianLongGeoKey( 2061), /* GeogAngularUnit */ - + // From 6.2.3 Projected Coordinate System Parameter Keys ProjectedCRSGeoKey( 3072), /* Section 6.3.3.1 codes */ PCSCitationGeoKey( 3073), /* documentation */ @@ -209,16 +208,16 @@ public class ReadTagsAndImages { VerticalCitationGeoKey( 4097), /* documentation */ VerticalDatumGeoKey( 4098), /* Section 6.3.4.2 codes */ VerticalUnitsGeoKey( 4099), /* Section 6.3.1.3 codes */ - + // Widely used key not defined in original specification To_WGS84_GeoKey( 2062); /* Not in original spec */ - + int key; - GeoKey(int key) { - this.key = key; + GeoKey(final int key) { + this.key = key; } - }; - + } + private static HashMap<Integer, GeoKey> keyMap; private static String nameFormat; @@ -231,15 +230,15 @@ public class ReadTagsAndImages { * @throws ImageReadException in the event of a data-format error or * unhandled I/O error. */ - private static void summarizeGeoTiffTags(PrintStream ps, TiffDirectory directory) + private static void summarizeGeoTiffTags(final PrintStream ps, final TiffDirectory directory) throws ImageReadException { if (keyMap == null) { - GeoKey[] values = GeoKey.values(); + final GeoKey[] values = GeoKey.values(); int maxNameLength = 0; keyMap = new HashMap<>(); - for (GeoKey g : values) { - String name = g.name(); + for (final GeoKey g : values) { + final String name = g.name(); if (name.length() > maxNameLength) { maxNameLength = name.length(); } @@ -251,7 +250,7 @@ public class ReadTagsAndImages { } // check to see if the directory has GeoTIFF tags. - short[] geoKeyDirectory = directory.getFieldValue( + final short[] geoKeyDirectory = directory.getFieldValue( GeoTiffTagConstants.EXIF_TAG_GEO_KEY_DIRECTORY_TAG, false); if (geoKeyDirectory == null || geoKeyDirectory.length < 4) { // The TIFF directory does not contain GeoTIFF information @@ -260,9 +259,9 @@ public class ReadTagsAndImages { ps.println(""); ps.println("Summary of GeoTIFF Elements ----------------------------"); - short[] bitsPerSample = directory.getFieldValue( + final short[] bitsPerSample = directory.getFieldValue( TiffTagConstants.TIFF_TAG_BITS_PER_SAMPLE, false); - short[] sampleFormat = directory.getFieldValue( + final short[] sampleFormat = directory.getFieldValue( TiffTagConstants.TIFF_TAG_SAMPLE_FORMAT, false); String contentTypeString = null; if (bitsPerSample != null && sampleFormat != null) { @@ -275,7 +274,7 @@ public class ReadTagsAndImages { } if (contentTypeString != null) { ps.format("%nContent Type: %s", contentTypeString); - String gdalNoDataString[] = directory.getFieldValue( + final String gdalNoDataString[] = directory.getFieldValue( GdalLibraryTagConstants.EXIF_TAG_GDAL_NO_DATA, false); if (gdalNoDataString != null && gdalNoDataString.length > 0) { ps.format(" GDAL No-Data value: %s", gdalNoDataString[0]); @@ -284,11 +283,11 @@ public class ReadTagsAndImages { } // all GeoKeyDirectory elements are unsigned shorts (2 bytes). - // Some of which exceed the value 32767, the maximum value of + // Some of which exceed the value 32767, the maximum value of // a signed short). Because Java does not support an unsigned short type, - // we need to mask in the low-order 2 bytes and obtain a 4-byte integer + // we need to mask in the low-order 2 bytes and obtain a 4-byte integer // equivalent. - int[] elements = new int[geoKeyDirectory.length]; + final int[] elements = new int[geoKeyDirectory.length]; for (int i = 0; i < geoKeyDirectory.length; i++) { elements[i] = geoKeyDirectory[i] & 0xffff; } @@ -298,7 +297,7 @@ public class ReadTagsAndImages { // European Petroleum Survey Group (EPSG) map projection ID // and may omit the floating-point map-projection parameters. // That approach is generally discouraged, but not prohibited. - TiffField doubleParametersField = directory.findField( + final TiffField doubleParametersField = directory.findField( GeoTiffTagConstants.EXIF_TAG_GEO_DOUBLE_PARAMS_TAG); double[] doubleParameters = null; if (doubleParametersField != null) { @@ -307,7 +306,7 @@ public class ReadTagsAndImages { // Get the ASCII field, Tag ID=34737 (0x87B1). This field // is often, but not always, present. - TiffField asciiParametersField = directory.findField( + final TiffField asciiParametersField = directory.findField( GeoTiffTagConstants.EXIF_TAG_GEO_ASCII_PARAMS_TAG); String asciiParameters = null; if (asciiParametersField != null) { @@ -319,10 +318,10 @@ public class ReadTagsAndImages { int k = 0; int n = elements.length / 4; for (int i = 0; i < n; i++) { - int key = elements[k]; - int ref = elements[k + 1]; - int len = elements[k + 2]; - int vop = elements[k + 3]; + final int key = elements[k]; + final int ref = elements[k + 1]; + final int len = elements[k + 2]; + final int vop = elements[k + 3]; String label = ""; if (ref == GeoTiffTagConstants.EXIF_TAG_GEO_ASCII_PARAMS_TAG.tag) { label = "(A)"; @@ -366,9 +365,9 @@ public class ReadTagsAndImages { // (following the conventional graphics standards). In cases // where the rows in the image or rster run from north to south, // one might expect that the delta-Y between rows would be - // a negative number. But by the GeoTIFF standard, + // a negative number. But by the GeoTIFF standard, // the verical spacing is given as a postive number. - TiffField pixelScaleField = directory.findField( + final TiffField pixelScaleField = directory.findField( GeoTiffTagConstants.EXIF_TAG_MODEL_PIXEL_SCALE_TAG); double[] pixelScale; if (pixelScaleField == null) { @@ -376,19 +375,19 @@ public class ReadTagsAndImages { } else { pixelScale = pixelScaleField.getDoubleArrayValue(); ps.format("%nModelPixelScale%n"); - for (int i = 0; i < pixelScale.length; i++) { - ps.format(" %15.10e", pixelScale[i]); + for (final double element : pixelScale) { + ps.format(" %15.10e", element); } ps.format("%n"); } - TiffField modelTiepointField = directory.findField( + final TiffField modelTiepointField = directory.findField( GeoTiffTagConstants.EXIF_TAG_MODEL_TIEPOINT_TAG); if (modelTiepointField != null) { ps.format("%nModelTiepointTag%n"); ps.println(" Pixel Model"); - double[] tiePoints = modelTiepointField.getDoubleArrayValue(); + final double[] tiePoints = modelTiepointField.getDoubleArrayValue(); n = tiePoints.length / 6; for (int i = 0; i < n; i++) { ps.format(" "); @@ -403,11 +402,11 @@ public class ReadTagsAndImages { } } - TiffField modelTransformField = directory.findField( + final TiffField modelTransformField = directory.findField( GeoTiffTagConstants.EXIF_TAG_MODEL_TRANSFORMATION_TAG); if (modelTransformField != null) { ps.format("%nModelTransformationTag%n"); - double[] mtf = modelTiepointField.getDoubleArrayValue(); + final double[] mtf = modelTiepointField.getDoubleArrayValue(); if (mtf.length >= 16) { for (int i = 0; i < 4; i++) { ps.format(" "); @@ -456,10 +455,10 @@ public class ReadTagsAndImages { int key; - CoordinateTransformationCode(int key){ + CoordinateTransformationCode(final int key){ this.key = key; - } - + } + /** * Gets the enumeration value associated with the specified * key if any. @@ -467,8 +466,8 @@ public class ReadTagsAndImages { * @return if the key is matched, a value enumeration value; * otherwise, a null. */ - static CoordinateTransformationCode getValueForKey(int key){ - for(CoordinateTransformationCode v: values()){ + static CoordinateTransformationCode getValueForKey(final int key){ + for(final CoordinateTransformationCode v: values()){ if(v.key==key){ return v; } @@ -495,8 +494,8 @@ public class ReadTagsAndImages { * more useful description is not available. */ private static String interpretElements( - GeoKey geoKey, int ref, int len, int valueOrPosition, - double[] doubleParameters, String asciiParameters) { + final GeoKey geoKey, final int ref, final int len, final int valueOrPosition, + final double[] doubleParameters, final String asciiParameters) { switch (geoKey) { case GTModelTypeGeoKey: switch (valueOrPosition) { @@ -565,7 +564,7 @@ public class ReadTagsAndImages { } break; case ProjCoordTransGeoKey: - CoordinateTransformationCode code = + final CoordinateTransformationCode code = CoordinateTransformationCode.getValueForKey(valueOrPosition); if(code!=null){ return code.name(); @@ -595,7 +594,7 @@ public class ReadTagsAndImages { case ProjCenterLongGeoKey: case ProjCenterLatGeoKey: return String.format("%13.4f", doubleParameters[valueOrPosition]); - + default: break; } @@ -613,7 +612,7 @@ public class ReadTagsAndImages { * @param len the length of the sub-string. * @return a valid string. */ - private static String extractAscii(String asciiParameters, int pos, int len) { + private static String extractAscii(final String asciiParameters, final int pos, final int len) { if (asciiParameters != null && len > 0 && pos + len <= asciiParameters.length()) { return asciiParameters.substring(pos, pos + len - 1); } @@ -632,9 +631,9 @@ public class ReadTagsAndImages { * @param len the number of values for the GeoKey * @return a formatted string. */ - private static String extractDouble(double[] doubleParameters, int pos, int len) { + private static String extractDouble(final double[] doubleParameters, final int pos, final int len) { if (doubleParameters != null && doubleParameters.length >= pos + len) { - StringBuilder sb = new StringBuilder(); + final StringBuilder sb = new StringBuilder(); for (int i = 0; i < len && i < 3; i++) { if (i > 0) { sb.append(" | "); diff --git a/src/test/java/org/apache/commons/imaging/formats/jpeg/JpegReadTest.java b/src/test/java/org/apache/commons/imaging/formats/jpeg/JpegReadTest.java index e589d60f..39e6708b 100644 --- a/src/test/java/org/apache/commons/imaging/formats/jpeg/JpegReadTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/jpeg/JpegReadTest.java @@ -45,7 +45,7 @@ public class JpegReadTest extends JpegBaseTest { @ParameterizedTest @MethodSource("data") public void test(final File imageFile) throws Exception { - JpegImageParser jpegImageParser = new JpegImageParser(); + final JpegImageParser jpegImageParser = new JpegImageParser(); final ImageMetadata metadata = jpegImageParser.getExifMetadata(new ByteSourceFile(imageFile), new TiffImagingParameters()); // TODO only run this tests with images that have metadata... //assertNotNull(metadata); diff --git a/src/test/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegInputStreamTest.java b/src/test/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegInputStreamTest.java index 6598b409..616b3673 100644 --- a/src/test/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegInputStreamTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/jpeg/decoder/JpegInputStreamTest.java @@ -39,7 +39,7 @@ public class JpegInputStreamTest { @Test public void testNextBitThrowsImageReadExceptionTwo() { - final int[] byteArray = new int[0]; + final int[] byteArray = {}; final JpegInputStream jpegInputStream = new JpegInputStream(byteArray); Assertions.assertThrows(IllegalStateException.class, jpegInputStream::nextBit); diff --git a/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/ExifRewriteTest.java b/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/ExifRewriteTest.java index fde7eebf..13ec8700 100644 --- a/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/ExifRewriteTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/ExifRewriteTest.java @@ -28,7 +28,6 @@ import java.io.File; import java.io.IOException; import java.io.OutputStream; import java.util.ArrayList; -import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.List; diff --git a/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/MicrosoftTagTest.java b/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/MicrosoftTagTest.java index e2e257fb..f139cc87 100644 --- a/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/MicrosoftTagTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/jpeg/exif/MicrosoftTagTest.java @@ -25,7 +25,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import org.apache.commons.imaging.ImageFormats; import org.apache.commons.imaging.ImageReadException; import org.apache.commons.imaging.ImageWriteException; import org.apache.commons.imaging.Imaging; @@ -60,7 +59,7 @@ public class MicrosoftTagTest extends ExifBaseTest { root.add(MicrosoftTagConstants.EXIF_TAG_XPTITLE, TITLE); final TiffImagingParameters params = new TiffImagingParameters(); params.setOutputSet(exifSet); - TiffImageParser tiffImageParser = new TiffImageParser(); + final TiffImageParser tiffImageParser = new TiffImageParser(); final byte[] bytes; try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) { tiffImageParser.writeImage(image, baos, params); diff --git a/src/test/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParserTest.java b/src/test/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParserTest.java index f8911908..39104693 100644 --- a/src/test/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParserTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/jpeg/iptc/IptcParserTest.java @@ -71,11 +71,8 @@ public class IptcParserTest { final List<IptcBlock> blocks = photoshopApp13Data.getRawBlocks(); assertEquals(2, blocks.size()); for (final IptcBlock block : blocks) { - if (block.getBlockType() == 1028) { + if ((block.getBlockType() == 1028) || (block.getBlockType() == 1061)) { // 0x0404 IPTC-NAA record - final byte[] data = block.getBlockData(); - assertTrue(data.length > 0); - } else if (block.getBlockType() == 1061) { // 0x0425 (Photoshop 7.0) Caption digest final byte[] data = block.getBlockData(); assertTrue(data.length > 0); @@ -93,15 +90,16 @@ public class IptcParserTest { @Test public void testEncodingSupport() throws IOException, ImageReadException { // NOTE: We use the JpegParser, so it will send only the block/segment that IptcParser needs for the test image - File file = new File(IptcParserTest.class.getResource("/images/jpeg/iptc/IMAGING-168/111083453-c07f1880-851e-11eb-8b61-2757f7d934bf.jpg").getFile()); - JpegImageParser parser = new JpegImageParser(); - JpegImageMetadata metadata = (JpegImageMetadata) parser.getMetadata(file); - JpegPhotoshopMetadata photoshopMetadata = metadata.getPhotoshop(); + final File file = new File(IptcParserTest.class.getResource("/images/jpeg/iptc/IMAGING-168/111083453-c07f1880-851e-11eb-8b61-2757f7d934bf.jpg").getFile()); + final JpegImageParser parser = new JpegImageParser(); + final JpegImageMetadata metadata = (JpegImageMetadata) parser.getMetadata(file); + final JpegPhotoshopMetadata photoshopMetadata = metadata.getPhotoshop(); @SuppressWarnings("unchecked") + final List<GenericImageMetadataItem> items = (List<GenericImageMetadataItem>) photoshopMetadata.getItems(); - GenericImageMetadataItem thanksInMandarin = items.get(3); + final GenericImageMetadataItem thanksInMandarin = items.get(3); // converted the thank-you in chinese characters to unicode for comparison here - assertArrayEquals("\u8c22\u8c22".getBytes(StandardCharsets.UTF_8), + assertArrayEquals("\u8c22\u8c22".getBytes(StandardCharsets.UTF_8), thanksInMandarin.getText().getBytes(StandardCharsets.UTF_8)); } } diff --git a/src/test/java/org/apache/commons/imaging/formats/png/PngWithInvalidPngChunkSizeTest.java b/src/test/java/org/apache/commons/imaging/formats/png/PngWithInvalidPngChunkSizeTest.java index 7b6279e6..be2e13f9 100644 --- a/src/test/java/org/apache/commons/imaging/formats/png/PngWithInvalidPngChunkSizeTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/png/PngWithInvalidPngChunkSizeTest.java @@ -39,7 +39,7 @@ public class PngWithInvalidPngChunkSizeTest { final File imageFile = new File(JpegWithInvalidDhtSegmentTest.class.getResource("/IMAGING-211/testfile_2.png").getFile()); final PngImagingParameters params = new PngImagingParameters(); params.setBufferedImageFactory(new ManagedImageBufferedImageFactory()); - PngImageParser jpegImageParser = new PngImageParser(); + final PngImageParser jpegImageParser = new PngImageParser(); Assertions.assertThrows(ImageReadException.class, () -> jpegImageParser.getBufferedImage(imageFile, params)); } @@ -53,7 +53,7 @@ public class PngWithInvalidPngChunkSizeTest { JpegWithInvalidDhtSegmentTest.class.getResource("/IMAGING-210/testfile.png").getFile()); final PngImagingParameters params = new PngImagingParameters(); params.setBufferedImageFactory(new ManagedImageBufferedImageFactory()); - PngImageParser jpegImageParser = new PngImageParser(); + final PngImageParser jpegImageParser = new PngImageParser(); Assertions.assertThrows(ImageReadException.class, () -> jpegImageParser.getBufferedImage(imageFile, params)); } } diff --git a/src/test/java/org/apache/commons/imaging/formats/png/PngWritePredictorTest.java b/src/test/java/org/apache/commons/imaging/formats/png/PngWritePredictorTest.java index 26bafd56..2ef113fd 100644 --- a/src/test/java/org/apache/commons/imaging/formats/png/PngWritePredictorTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/png/PngWritePredictorTest.java @@ -55,12 +55,12 @@ public class PngWritePredictorTest { */ private int[] populateARGB() { //populate array with a blend of color components - int[] argb = new int[256 * 256]; + final int[] argb = new int[256 * 256]; for (int i = 0; i < 256; i++) { for (int j = 0; j < 256; j++) { - int red = i; - int green = (255 - i); - int blue = j; + final int red = i; + final int green = (255 - i); + final int blue = j; argb[i * 256 + j] = ((((0xff00 | red) << 8) | green) << 8) | blue; } } @@ -77,7 +77,7 @@ public class PngWritePredictorTest { @Test void testWriteWithPredictor() { - int[] argb = populateARGB(); + final int[] argb = populateARGB(); // Test the RGB (no alpha) case --------------------- BufferedImage bImage = new BufferedImage(256, 256, BufferedImage.TYPE_INT_RGB); @@ -87,12 +87,12 @@ public class PngWritePredictorTest { try { tempFile = File.createTempFile("PngWritePredictorRGB", ".png"); - } catch (IOException ioex) { + } catch (final IOException ioex) { fail("Failed to create temporary file, " + ioex.getMessage()); } - PngImagingParameters params = new PngImagingParameters(); + final PngImagingParameters params = new PngImagingParameters(); params.setPredictorEnabled(true); - PngImageParser parser = new PngImageParser(); + final PngImageParser parser = new PngImageParser(); try ( FileOutputStream fos = new FileOutputStream(tempFile); BufferedOutputStream bos = new BufferedOutputStream(fos)) { parser.writeImage(bImage, bos, params); bos.flush(); @@ -101,11 +101,11 @@ public class PngWritePredictorTest { } try { - int[] brgb = new int[256 * 256]; + final int[] brgb = new int[256 * 256]; bImage = ImageIO.read(tempFile); bImage.getRGB(0, 0, 256, 256, brgb, 0, 256); assertArrayEquals(argb, brgb, "Round trip for RGB failed"); - } catch (IOException ex) { + } catch (final IOException ex) { fail("Failed reading RGB with exception " + ex.getMessage()); } @@ -122,11 +122,11 @@ public class PngWritePredictorTest { fail("Failed writing ARGB with exception " + ex.getMessage()); } try { - int[] brgb = new int[256 * 256]; + final int[] brgb = new int[256 * 256]; bImage = ImageIO.read(tempFile); bImage.getRGB(0, 0, 256, 256, brgb, 0, 256); assertArrayEquals(argb, brgb, "Round trip for ARGB failed"); - } catch (IOException ex) { + } catch (final IOException ex) { fail("Failed reading ARGB with exception " + ex.getMessage()); } diff --git a/src/test/java/org/apache/commons/imaging/formats/png/PngWriteReadTest.java b/src/test/java/org/apache/commons/imaging/formats/png/PngWriteReadTest.java index b8299995..e7668893 100644 --- a/src/test/java/org/apache/commons/imaging/formats/png/PngWriteReadTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/png/PngWriteReadTest.java @@ -205,7 +205,7 @@ public class PngWriteReadTest extends ImagingTest { final PngImagingParameters writeParams = new PngImagingParameters(); writeParams.setTextChunks(textChunks); - PngImageParser pngImageParser = new PngImageParser(); + final PngImageParser pngImageParser = new PngImageParser(); final byte[] bytes; try (ByteArrayOutputStream os = new ByteArrayOutputStream()) { pngImageParser.writeImage(srcImage, os, writeParams); diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffAlphaRoundTripTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffAlphaRoundTripTest.java index 2e9af5c5..35e55d45 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffAlphaRoundTripTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffAlphaRoundTripTest.java @@ -146,10 +146,10 @@ public class TiffAlphaRoundTripTest { final int nBytesPerStrip = bytesPerSample * height * width; final ByteOrder byteOrder = ByteOrder.nativeOrder(); - int[] samples = new int[width * height]; + final int[] samples = new int[width * height]; for (int i = 0; i < 10; i++) { for (int j = 0; j < 10; j++) { - int index = i * width + j; + final int index = i * width + j; samples[index] = j > i ? 0xffff0000 : 0x88ff0000; } } @@ -174,7 +174,7 @@ public class TiffAlphaRoundTripTest { final byte[] b = new byte[nBytesPerStrip]; int k = 0; - for (int sample : samples) { + for (final int sample : samples) { b[k++] = (byte) ((sample >> 16) & 0xff); // R b[k++] = (byte) ((sample >> 8) & 0xff); // G b[k++] = (byte) (sample & 0xff); // B @@ -184,7 +184,7 @@ public class TiffAlphaRoundTripTest { final TiffElement.DataElement[] imageData = new TiffElement.DataElement[1]; imageData[0] = new TiffImageData.Data(0, b.length, b); - TiffImageData tiffImageData + final TiffImageData tiffImageData = new TiffImageData.Strips(imageData, height); outDir.setTiffImageData(tiffImageData); @@ -197,12 +197,12 @@ public class TiffAlphaRoundTripTest { bos.flush(); } - BufferedImage result = Imaging.getBufferedImage(outputFile); - int []argb = new int[samples.length]; + final BufferedImage result = Imaging.getBufferedImage(outputFile); + final int []argb = new int[samples.length]; result.getRGB(0, 0, width, height, argb, 0, width); - int index = 3*width+1; + final int index = 3*width+1; int iSample = samples[index]; - int iArgb = argb[index]; + final int iArgb = argb[index]; if (iExtra == 0) { // when extra samples is zero, the alpha channel is ignored. // We expect ARGB to start with 0xff. So we OR in 0xff for @@ -212,8 +212,8 @@ public class TiffAlphaRoundTripTest { // The pre-multiply alpha case iSample = 0x89de0000; } - String p = String.format("%08x", iSample); - String q = String.format("%08x", iArgb); + final String p = String.format("%08x", iSample); + final String q = String.format("%08x", iArgb); assertEquals(p, q, "Failure on ExtraSamples="+iExtra); } } diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffCcittTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffCcittTest.java index 63946ae8..9877160c 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffCcittTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffCcittTest.java @@ -24,7 +24,6 @@ import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream; import java.io.IOException; -import org.apache.commons.imaging.ImageFormats; import org.apache.commons.imaging.ImageReadException; import org.apache.commons.imaging.ImageWriteException; import org.apache.commons.imaging.Imaging; diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffFloatingPointMultivariableTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffFloatingPointMultivariableTest.java index 82310928..c6795251 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffFloatingPointMultivariableTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffFloatingPointMultivariableTest.java @@ -62,10 +62,10 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { float[] fSample = new float[width * height * samplesPerPixel]; public TiffFloatingPointMultivariableTest() { for(int iPlane = 0; iPlane<2; iPlane++){ - int pOffset = iPlane*width*height; + final int pOffset = iPlane*width*height; for(int iRow=0; iRow<height; iRow++){ for(int iCol=0; iCol<width; iCol++){ - int index = pOffset + iRow*width +iCol; + final int index = pOffset + iRow*width +iCol; fSample[index] = index; } } @@ -79,7 +79,7 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { // TIFF datareaders classes. So that format is not yet exercised. // Note also that the compressed floating-point with predictor=3 // is processed in other tests, but not here. - List<File>testFiles = new ArrayList<>(); + final List<File>testFiles = new ArrayList<>(); testFiles.add(writeFile(ByteOrder.LITTLE_ENDIAN, false, false, TiffPlanarConfiguration.CHUNKY)); testFiles.add(writeFile(ByteOrder.BIG_ENDIAN, false, false, TiffPlanarConfiguration.CHUNKY)); testFiles.add(writeFile(ByteOrder.LITTLE_ENDIAN, true, false, TiffPlanarConfiguration.CHUNKY)); @@ -96,7 +96,7 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { // the test logic implemented here does. testFiles.add(writeFile(ByteOrder.BIG_ENDIAN, true, true, TiffPlanarConfiguration.PLANAR)); - for(File testFile : testFiles){ + for(final File testFile : testFiles){ final String name = testFile.getName(); final ByteSourceFile byteSource = new ByteSourceFile(testFile); final TiffReader tiffReader = new TiffReader(true); @@ -109,12 +109,12 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { assertNotNull(raster, "Failed to get raster from " + name); assertEquals(2, raster.getSamplesPerPixel(), "Invalid samples per pixel in " + name); for(int iPlane = 0; iPlane<2; iPlane++){ - int pOffset = iPlane*width*height; + final int pOffset = iPlane*width*height; for(int iRow=0; iRow<height; iRow++){ for(int iCol=0; iCol<width; iCol++){ - int index = pOffset + iRow*width +iCol; - float tValue = fSample[index]; - float rValue = raster.getValue(iCol, iRow, iPlane); + final int index = pOffset + iRow*width +iCol; + final float tValue = fSample[index]; + final float rValue = raster.getValue(iCol, iRow, iPlane); assertEquals(tValue, rValue, "Failed at index x="+iCol+", y="+iRow+", iPlane="+iPlane); } } @@ -126,7 +126,7 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { final ByteOrder byteOrder, final boolean useTiles, final boolean usePredictorForTiles, - TiffPlanarConfiguration planarConfiguration ) throws IOException, ImageWriteException { + final TiffPlanarConfiguration planarConfiguration ) throws IOException, ImageWriteException { final String name = String.format("FpMultiVarRoundTrip_%s_%s%s.tiff", planarConfiguration==TiffPlanarConfiguration.CHUNKY ? "Chunky" : "Planar", @@ -175,8 +175,8 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { if(useTiles && usePredictorForTiles){ outDir.add(TiffTagConstants.TIFF_TAG_PREDICTOR, (short) TiffTagConstants.PREDICTOR_VALUE_FLOATING_POINT_DIFFERENCING); - for(int iBlock=0; iBlock<blocks.length; iBlock++){ - applyTilePredictor(nRowsInBlock, nColsInBlock, blocks[iBlock]); + for (final byte[] block : blocks) { + applyTilePredictor(nRowsInBlock, nColsInBlock, block); } } @@ -239,8 +239,8 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { */ private byte[][] getBytesForOutput32( final int nRowsInBlock, final int nColsInBlock, - ByteOrder byteOrder, - boolean useTiles, TiffPlanarConfiguration planarConfiguration ) { + final ByteOrder byteOrder, + final boolean useTiles, final TiffPlanarConfiguration planarConfiguration ) { final int nColsOfBlocks = (width + nColsInBlock - 1) / nColsInBlock; final int nRowsOfBlocks = (height + nRowsInBlock + 1) / nRowsInBlock; final int bytesPerPixel = 4 * samplesPerPixel; @@ -284,7 +284,7 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { // height of the image is not evenly divided by the number // of rows per strip, an adjustmnet is made to the size of the block. // However, the TIFF specification calls for tiles to always be padded. - int nRowsAdjusted = height - blockRow*nRowsInBlock; + final int nRowsAdjusted = height - blockRow*nRowsInBlock; blockPlanarOffset = nRowsAdjusted * nColsInBlock; } for (int j = 0; j < width; j++) { @@ -314,7 +314,7 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { return blocks; } - private void applyTilePredictor(int nRowsInBlock, int nColsInBlock, byte[] bytes) { + private void applyTilePredictor(final int nRowsInBlock, final int nColsInBlock, final byte[] bytes) { // The floating-point horizonal predictor breaks the samples into // separate sets of bytes. The first set contains the high-order bytes. // The second the second-highest order bytes, etc. Once the bytes are @@ -323,16 +323,16 @@ public class TiffFloatingPointMultivariableTest extends TiffBaseTest { // its compressibility. // More extensive discussions of this technique are given in the // Javadoc for the TIFF-specific ImageDataReader class. - byte[] b = new byte[bytes.length]; - int bytesInRow = nColsInBlock * 4; + final byte[] b = new byte[bytes.length]; + final int bytesInRow = nColsInBlock * 4; for (int iPlane = 0; iPlane < samplesPerPixel; iPlane++) { // separate out the groups of bytes - int planarByteOffset = iPlane * nRowsInBlock * nColsInBlock * 4; + final int planarByteOffset = iPlane * nRowsInBlock * nColsInBlock * 4; for (int i = 0; i < nRowsInBlock; i++) { - int aOffset = planarByteOffset + i * bytesInRow; - int bOffset = aOffset + nColsInBlock; - int cOffset = bOffset + nColsInBlock; - int dOffset = cOffset + nColsInBlock; + final int aOffset = planarByteOffset + i * bytesInRow; + final int bOffset = aOffset + nColsInBlock; + final int cOffset = bOffset + nColsInBlock; + final int dOffset = cOffset + nColsInBlock; for (int j = 0; j < nColsInBlock; j++) { b[aOffset + j] = bytes[aOffset + j * 4]; b[bOffset + j] = bytes[aOffset + j * 4 + 1]; diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataIntTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataIntTest.java index b9170741..51feea8d 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataIntTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataIntTest.java @@ -109,9 +109,9 @@ public class TiffRasterDataIntTest { */ @Test public void testGetValue2() { - int []data = new int[width*height*2]; + final int []data = new int[width*height*2]; data[width*height] = 77; - TiffRasterDataInt instance = new TiffRasterDataInt(width, height, 2, data); + final TiffRasterDataInt instance = new TiffRasterDataInt(width, height, 2, data); int test = instance.getIntValue(0, 0, 1); assertEquals(77, test, "Get into source data test failed at (0, 0, 1)"); @@ -183,7 +183,7 @@ public class TiffRasterDataIntTest { */ @Test public void testGetDataType() { - TiffRasterDataType dataType = raster.getDataType(); + final TiffRasterDataType dataType = raster.getDataType(); assertTrue(dataType == TiffRasterDataType.INTEGER, "Unexpected data type "+dataType.name()); } diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataTest.java index b9b44625..752b191f 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRasterDataTest.java @@ -165,7 +165,7 @@ public class TiffRasterDataTest { public void testGetData() { final float[] result = raster.getData(); assertArrayEquals(data, result); - int samplesPerPixel = raster.getSamplesPerPixel(); + final int samplesPerPixel = raster.getSamplesPerPixel(); assertEquals(1, samplesPerPixel, "Incorrect number of samples per pixel"); } @@ -190,7 +190,7 @@ public class TiffRasterDataTest { */ @Test public void testGetDataType() { - TiffRasterDataType dataType = raster.getDataType(); + final TiffRasterDataType dataType = raster.getDataType(); assertTrue(dataType == TiffRasterDataType.FLOAT, "Unexpected data type "+dataType.name()); } diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffReadWriteTagsTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffReadWriteTagsTest.java index 2249f69b..51aa2098 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffReadWriteTagsTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffReadWriteTagsTest.java @@ -49,8 +49,8 @@ public class TiffReadWriteTagsTest extends TiffBaseTest { final String area = "A good area"; final float widthRes = 2.2f; final double geoDoubleParams = -8.4; - RationalNumber exposureCompensation = new RationalNumber(-17, 10); - RationalNumber[] latitude = new RationalNumber[3]; + final RationalNumber exposureCompensation = new RationalNumber(-17, 10); + final RationalNumber[] latitude = new RationalNumber[3]; latitude[0] = new RationalNumber(38, 1, true); latitude[1] = new RationalNumber(36, 1, true); latitude[2] = new RationalNumber(0xF5937B1E, 70_000_000, true); @@ -89,7 +89,7 @@ public class TiffReadWriteTagsTest extends TiffBaseTest { assertEquals(widthRes, rootDir.getFieldValue(MicrosoftHdPhotoTagConstants.EXIF_TAG_WIDTH_RESOLUTION), 0.0); assertEquals(geoDoubleParams, rootDir.getFieldValue(GeoTiffTagConstants.EXIF_TAG_GEO_DOUBLE_PARAMS_TAG, true)[0], 0.0); assertEquals(exposureCompensation.doubleValue(), rootDir.getFieldValue(ExifTagConstants.EXIF_TAG_EXPOSURE_COMPENSATION).doubleValue(), 0.0); - RationalNumber[] testLat = rootDir.getFieldValue(GpsTagConstants.GPS_TAG_GPS_LATITUDE, true); + final RationalNumber[] testLat = rootDir.getFieldValue(GpsTagConstants.GPS_TAG_GPS_LATITUDE, true); for (int i = 0; i < 3; i++) { assertEquals(latitude[i].doubleValue(), testLat[i].doubleValue(), 0.0); } diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundTripInt32Test.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundTripInt32Test.java index 1efd0b7c..acd3cb43 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundTripInt32Test.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundTripInt32Test.java @@ -82,8 +82,8 @@ public class TiffRoundTripInt32Test extends TiffBaseTest { true, // indicates that application should read image data, if present FormatCompliance.getDefault()); final TiffDirectory directory = contents.directories.get(0); - TiffRasterData rdInt = directory.getRasterData(null); - int []test = rdInt.getIntData(); + final TiffRasterData rdInt = directory.getRasterData(null); + final int []test = rdInt.getIntData(); for(int j=0; j<sample.length; j++){ assertEquals(sample[j], test[j], "Extracted data does not match original, test "+name+": " @@ -91,7 +91,7 @@ public class TiffRoundTripInt32Test extends TiffBaseTest { } final TiffImagingParameters params = new TiffImagingParameters(); params.setSubImage(2, 2, width-4, height-4); - TiffRasterData rdSub = directory.getRasterData(params); + final TiffRasterData rdSub = directory.getRasterData(params); assertEquals(width-4, rdSub.getWidth(), "Invalid sub-image width"); assertEquals(height-4, rdSub.getHeight(), "Invalid sub-image height"); for(int x = 2; x<width-2; x++){ diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundtripTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundtripTest.java index 36537800..ee2f2bbe 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundtripTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffRoundtripTest.java @@ -49,7 +49,7 @@ public class TiffRoundtripTest extends TiffBaseTest { final BufferedImage image = Imaging.getBufferedImage(imageFile); assertNotNull(image); - final int[] compressions = new int[]{ + final int[] compressions = { TiffConstants.TIFF_COMPRESSION_UNCOMPRESSED, TiffConstants.TIFF_COMPRESSION_LZW, TiffConstants.TIFF_COMPRESSION_PACKBITS, diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffShortIntRoundTripTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffShortIntRoundTripTest.java index 267f0eed..67c7dc10 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/TiffShortIntRoundTripTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/TiffShortIntRoundTripTest.java @@ -82,8 +82,8 @@ public class TiffShortIntRoundTripTest extends TiffBaseTest { true, // indicates that application should read image data, if present FormatCompliance.getDefault()); final TiffDirectory directory = contents.directories.get(0); - TiffRasterData rdInt = directory.getRasterData(null); - int []test = rdInt.getIntData(); + final TiffRasterData rdInt = directory.getRasterData(null); + final int []test = rdInt.getIntData(); for(int j=0; j<sample.length; j++){ assertEquals(sample[j], test[j], "Extracted data does not match original, test "+name+": " @@ -91,7 +91,7 @@ public class TiffShortIntRoundTripTest extends TiffBaseTest { } final TiffImagingParameters params = new TiffImagingParameters(); params.setSubImage(2, 2, width-4, height-4); - TiffRasterData rdSub = directory.getRasterData(params); + final TiffRasterData rdSub = directory.getRasterData(params); assertEquals(width-4, rdSub.getWidth(), "Invalid sub-image width"); assertEquals(height-4, rdSub.getHeight(), "Invalid sub-image height"); for(int x = 2; x<width-2; x++){ diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterLogLuvTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterLogLuvTest.java index 73ade225..4b3ea92f 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterLogLuvTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterLogLuvTest.java @@ -32,7 +32,7 @@ public class PhotometricInterpreterLogLuvTest { private PhotometricInterpreterLogLuv p; private final int samplesPerPixel = 8; - private final int[] bitsPerSample = new int[] {1, 2, 3}; + private final int[] bitsPerSample = {1, 2, 3}; private final int predictor = 1; private final int width = 800; private final int height = 600; diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterRgbTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterRgbTest.java index fb213806..00dc6b77 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterRgbTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/PhotometricInterpreterRgbTest.java @@ -30,7 +30,7 @@ public class PhotometricInterpreterRgbTest { private PhotometricInterpreterRgb p; private final int samplesPerPixel = 3; - private final int[] bitsPerSample = new int[] {8, 8, 8}; + private final int[] bitsPerSample = {8, 8, 8}; private final int predictor = 1; private final int width = 800; private final int height = 600; diff --git a/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/floatingpoint/PhotometricInterpreterFloatTest.java b/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/floatingpoint/PhotometricInterpreterFloatTest.java index 9f7afb4d..ac5ed5da 100644 --- a/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/floatingpoint/PhotometricInterpreterFloatTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/tiff/photometricinterpreters/floatingpoint/PhotometricInterpreterFloatTest.java @@ -161,7 +161,7 @@ public class PhotometricInterpreterFloatTest { */ @Test public void testGetMaxXY() { - final int[] expResult = new int[]{256, 256}; + final int[] expResult = {256, 256}; final int[] result = pInterp.getMaxXY(); assertArrayEquals(expResult, result); } @@ -181,7 +181,7 @@ public class PhotometricInterpreterFloatTest { */ @Test public void testGetMinXY() { - final int[] expResult = new int[]{0, 0}; + final int[] expResult = {0, 0}; final int[] result = pInterp.getMinXY(); assertArrayEquals(expResult, result); } diff --git a/src/test/java/org/apache/commons/imaging/formats/xmp/XmpUpdateTest.java b/src/test/java/org/apache/commons/imaging/formats/xmp/XmpUpdateTest.java index fcd17ead..45ad49d5 100644 --- a/src/test/java/org/apache/commons/imaging/formats/xmp/XmpUpdateTest.java +++ b/src/test/java/org/apache/commons/imaging/formats/xmp/XmpUpdateTest.java @@ -69,8 +69,8 @@ public class XmpUpdateTest extends ImagingTest { // ---- - ImageParser parser = Util.getImageParser("." + imageFormat.getDefaultExtension()); - ImagingParameters params = parser.getDefaultParameters(); + final ImageParser parser = Util.getImageParser("." + imageFormat.getDefaultExtension()); + final ImagingParameters params = parser.getDefaultParameters(); ((XmpImagingParameters) params).setXmpXml(xmpXml); try (FileOutputStream fos = new FileOutputStream(tempFile)) { parser.writeImage(image, fos, params); diff --git a/src/test/java/org/apache/commons/imaging/roundtrip/BitmapRoundtripTest.java b/src/test/java/org/apache/commons/imaging/roundtrip/BitmapRoundtripTest.java index b2fd0503..c1c768ca 100644 --- a/src/test/java/org/apache/commons/imaging/roundtrip/BitmapRoundtripTest.java +++ b/src/test/java/org/apache/commons/imaging/roundtrip/BitmapRoundtripTest.java @@ -26,7 +26,7 @@ import org.junit.jupiter.params.provider.MethodSource; public class BitmapRoundtripTest extends RoundtripBase { - public static BufferedImage[] images = new BufferedImage[] { + public static BufferedImage[] images = { TestImages.createArgbBitmapImage(1, 1), // minimal TestImages.createArgbBitmapImage(2, 2), // TestImages.createArgbBitmapImage(10, 10), // larger than 8 diff --git a/src/test/java/org/apache/commons/imaging/roundtrip/FormatInfo.java b/src/test/java/org/apache/commons/imaging/roundtrip/FormatInfo.java index 6f29c822..e663974b 100644 --- a/src/test/java/org/apache/commons/imaging/roundtrip/FormatInfo.java +++ b/src/test/java/org/apache/commons/imaging/roundtrip/FormatInfo.java @@ -27,7 +27,7 @@ class FormatInfo { static final int COLOR_GRAYSCALE = 2; static final int COLOR_BITMAP = 3; - static final FormatInfo[] PRESERVING_RESOLUTION_FORMATS = new FormatInfo[] { + static final FormatInfo[] PRESERVING_RESOLUTION_FORMATS = { new FormatInfo(ImageFormats.PNG, true, true, COLOR_FULL_RGB, true, true), // new FormatInfo(ImageFormats.ICO, true, true, @@ -42,7 +42,7 @@ class FormatInfo { COLOR_FULL_RGB, true, true), // }; - static final FormatInfo[] READ_WRITE_FORMATS = new FormatInfo[] { + static final FormatInfo[] READ_WRITE_FORMATS = { new FormatInfo(ImageFormats.PNG, true, true, COLOR_FULL_RGB, true, true), // new FormatInfo(ImageFormats.GIF, true, true, diff --git a/src/test/java/org/apache/commons/imaging/roundtrip/FullColorRoundtrip.java b/src/test/java/org/apache/commons/imaging/roundtrip/FullColorRoundtrip.java index 3f9a9e02..290aeed6 100644 --- a/src/test/java/org/apache/commons/imaging/roundtrip/FullColorRoundtrip.java +++ b/src/test/java/org/apache/commons/imaging/roundtrip/FullColorRoundtrip.java @@ -26,7 +26,7 @@ import org.junit.jupiter.params.provider.MethodSource; public class FullColorRoundtrip extends RoundtripBase { - public static final BufferedImage[] images = new BufferedImage[]{ + public static final BufferedImage[] images = { TestImages.createFullColorImage(1, 1), // minimal TestImages.createFullColorImage(2, 2), // TestImages.createFullColorImage(10, 10), // larger than 8 diff --git a/src/test/java/org/apache/commons/imaging/roundtrip/GrayscaleRountripTest.java b/src/test/java/org/apache/commons/imaging/roundtrip/GrayscaleRountripTest.java index c8feb2cf..af528678 100644 --- a/src/test/java/org/apache/commons/imaging/roundtrip/GrayscaleRountripTest.java +++ b/src/test/java/org/apache/commons/imaging/roundtrip/GrayscaleRountripTest.java @@ -26,7 +26,7 @@ import org.junit.jupiter.params.provider.MethodSource; public class GrayscaleRountripTest extends RoundtripBase { - public static BufferedImage[] images = new BufferedImage[]{ + public static BufferedImage[] images = { TestImages.createArgbBitmapImage(1, 1), // minimal TestImages.createArgbGrayscaleImage(2, 2), // TestImages.createArgbGrayscaleImage(10, 10), // larger than 8 diff --git a/src/test/java/org/apache/commons/imaging/roundtrip/LimitedColorRoundtripTest.java b/src/test/java/org/apache/commons/imaging/roundtrip/LimitedColorRoundtripTest.java index 8e3adaea..8b4ac5de 100644 --- a/src/test/java/org/apache/commons/imaging/roundtrip/LimitedColorRoundtripTest.java +++ b/src/test/java/org/apache/commons/imaging/roundtrip/LimitedColorRoundtripTest.java @@ -26,7 +26,7 @@ import org.junit.jupiter.params.provider.MethodSource; public class LimitedColorRoundtripTest extends RoundtripBase { - public static BufferedImage[] images = new BufferedImage[] { + public static BufferedImage[] images = { TestImages.createLimitedColorImage(1, 1), // minimal TestImages.createLimitedColorImage(2, 2), // TestImages.createLimitedColorImage(10, 10), // larger than 8 diff --git a/src/test/java/org/apache/commons/imaging/roundtrip/PixelDensityRoundtrip.java b/src/test/java/org/apache/commons/imaging/roundtrip/PixelDensityRoundtrip.java index 651e7f85..f5269f4c 100644 --- a/src/test/java/org/apache/commons/imaging/roundtrip/PixelDensityRoundtrip.java +++ b/src/test/java/org/apache/commons/imaging/roundtrip/PixelDensityRoundtrip.java @@ -48,7 +48,7 @@ public class PixelDensityRoundtrip extends RoundtripBase { final TiffImagingParameters params = new TiffImagingParameters(); final PixelDensity pixelDensity = PixelDensity.createFromPixelsPerInch(75, 150); params.setPixelDensity(pixelDensity); - TiffImageParser tiffImageParser = new TiffImageParser(); + final TiffImageParser tiffImageParser = new TiffImageParser(); tiffImageParser.writeImage(testImage, new ByteArrayOutputStream(), params); final ImageInfo imageInfo = Imaging.getImageInfo(temp1); diff --git a/src/test/java/org/apache/commons/imaging/roundtrip/RoundtripBase.java b/src/test/java/org/apache/commons/imaging/roundtrip/RoundtripBase.java index 47c5b558..5a961e4f 100644 --- a/src/test/java/org/apache/commons/imaging/roundtrip/RoundtripBase.java +++ b/src/test/java/org/apache/commons/imaging/roundtrip/RoundtripBase.java @@ -42,7 +42,7 @@ public class RoundtripBase { + formatInfo.format.getDefaultExtension()); Debug.debug("tempFile: " + temp1.getName()); - ImageParser imageParser = Util.getImageParser(formatInfo.format); + final ImageParser imageParser = Util.getImageParser(formatInfo.format); final ImagingParameters params = Util.getImageParser(formatInfo.format).getDefaultParameters(); try (FileOutputStream fos = new FileOutputStream(temp1)) {