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

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

commit d462ac40c2053d25d4224cfc8e7a86a68371f9a3
Author: Arturo Bernal <[email protected]>
AuthorDate: Sat Dec 12 16:34:33 2020 +0100

    COMPRESS-561 - Minor improvement
---
 .../archivers/ar/ArArchiveOutputStream.java        |  9 ++++----
 .../archivers/cpio/CpioArchiveInputStream.java     |  2 +-
 .../archivers/cpio/CpioArchiveOutputStream.java    |  2 +-
 .../archivers/dump/DumpArchiveConstants.java       |  4 ++--
 .../compress/archivers/dump/DumpArchiveEntry.java  |  4 ++--
 .../archivers/dump/DumpArchiveInputStream.java     |  6 +++---
 .../BoundedSeekableByteChannelInputStream.java     |  4 ++--
 .../commons/compress/archivers/sevenz/Coders.java  |  4 ++--
 .../compress/archivers/sevenz/SevenZFile.java      |  5 +++--
 .../compress/archivers/sevenz/SevenZMethod.java    |  5 +++--
 .../archivers/tar/TarArchiveInputStream.java       |  2 +-
 .../archivers/tar/TarArchiveOutputStream.java      |  2 +-
 .../compress/archivers/zip/AsiExtraField.java      |  9 ++++----
 .../commons/compress/archivers/zip/BinaryTree.java |  9 ++++----
 .../archivers/zip/ExplodingInputStream.java        |  2 +-
 .../compress/archivers/zip/ExtraFieldUtils.java    | 25 ++++++++++++----------
 .../compress/archivers/zip/ZipArchiveEntry.java    |  2 +-
 .../archivers/zip/ZipArchiveInputStream.java       |  2 +-
 .../archivers/zip/ZipArchiveOutputStream.java      | 13 +++++------
 .../commons/compress/archivers/zip/ZipFile.java    |  4 ++--
 .../zip/ZipSplitReadOnlySeekableByteChannel.java   |  2 +-
 .../compress/compressors/brotli/BrotliUtils.java   |  2 +-
 .../bzip2/BZip2CompressorInputStream.java          |  2 +-
 .../compress/compressors/bzip2/BlockSort.java      |  4 ++--
 .../compressors/deflate64/HuffmanDecoder.java      |  2 +-
 .../lz4/BlockLZ4CompressorOutputStream.java        |  3 ++-
 .../lz4/FramedLZ4CompressorOutputStream.java       | 13 +++++------
 .../snappy/SnappyCompressorInputStream.java        |  2 +-
 .../compress/compressors/zstandard/ZstdUtils.java  |  2 +-
 .../commons/compress/utils/ArchiveUtils.java       |  2 +-
 .../commons/compress/utils/BitInputStream.java     |  2 +-
 .../apache/commons/compress/AbstractTestCase.java  |  2 +-
 .../commons/compress/archivers/ZipTestCase.java    |  6 +++---
 .../compress/archivers/examples/ExpanderTest.java  |  2 +-
 .../archivers/memory/MemoryArchiveInputStream.java |  7 +++---
 .../compress/archivers/sevenz/SevenZFileTest.java  |  2 +-
 .../archivers/sevenz/SevenZNativeHeapTest.java     |  4 ++--
 .../commons/compress/archivers/tar/TarLister.java  |  2 +-
 .../compress/archivers/zip/DataDescriptorTest.java |  4 ++--
 .../commons/compress/archivers/zip/Lister.java     |  7 +++---
 .../compress/archivers/zip/ScatterSample.java      |  4 ++--
 .../compress/archivers/zip/UTF8ZipFilesTest.java   |  3 +--
 .../archivers/zip/ZipArchiveEntryTest.java         |  2 +-
 .../archivers/zip/ZipArchiveInputStreamTest.java   | 10 ++++-----
 .../archivers/zip/ZipSplitOutputStreamTest.java    |  2 +-
 .../commons/compress/compressors/GZipTestCase.java |  6 +++---
 .../commons/compress/compressors/LZMATestCase.java |  2 +-
 .../bzip2/PythonTruncatedBzip2Test.java            |  2 +-
 .../lz4/BlockLZ4CompressorRoundtripTest.java       |  2 +-
 .../lz4/FramedLZ4CompressorInputStreamTest.java    |  2 +-
 .../commons/compress/utils/CharsetsTest.java       |  4 ++--
 .../utils/FixedLengthBlockOutputStreamTest.java    |  7 +++---
 .../MultiReadOnlySeekableByteChannelTest.java      |  2 +-
 .../ZipSplitReadOnlySeekableByteChannelTest.java   |  2 +-
 54 files changed, 124 insertions(+), 113 deletions(-)

diff --git 
a/src/main/java/org/apache/commons/compress/archivers/ar/ArArchiveOutputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/ar/ArArchiveOutputStream.java
index 6efd879..141eb4b 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/ar/ArArchiveOutputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/ar/ArArchiveOutputStream.java
@@ -137,14 +137,15 @@ public class ArArchiveOutputStream extends 
ArchiveOutputStream {
         boolean mustAppendName = false;
 
         final String n = pEntry.getName();
-        if (LONGFILE_ERROR == longFileMode && n.length() > 16) {
+        final int nLength = n.length();
+        if (LONGFILE_ERROR == longFileMode && nLength > 16) {
             throw new IOException("File name too long, > 16 chars: "+n);
         }
         if (LONGFILE_BSD == longFileMode &&
-            (n.length() > 16 || n.contains(" "))) {
+            (nLength > 16 || n.contains(" "))) {
             mustAppendName = true;
             offset += write(ArArchiveInputStream.BSD_LONGNAME_PREFIX
-                            + String.valueOf(n.length()));
+                            + String.valueOf(nLength));
         } else {
             offset += write(n);
         }
@@ -180,7 +181,7 @@ public class ArArchiveOutputStream extends 
ArchiveOutputStream {
         offset = fill(offset, 48, ' ');
         final String s =
             String.valueOf(pEntry.getLength()
-                           + (mustAppendName ? n.length() : 0));
+                           + (mustAppendName ? nLength : 0));
         if (s.length() > 10) {
             throw new IOException("Size too long");
         }
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveInputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveInputStream.java
index 09d1def..831f5a4 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveInputStream.java
@@ -369,7 +369,7 @@ public class CpioArchiveInputStream extends 
ArchiveInputStream implements
 
     private CpioArchiveEntry readNewEntry(final boolean hasCrc)
             throws IOException {
-        CpioArchiveEntry ret;
+        final CpioArchiveEntry ret;
         if (hasCrc) {
             ret = new CpioArchiveEntry(FORMAT_NEW_CRC);
         } else {
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveOutputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveOutputStream.java
index cf8870f..f5586e1 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveOutputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/cpio/CpioArchiveOutputStream.java
@@ -518,7 +518,7 @@ public class CpioArchiveOutputStream extends 
ArchiveOutputStream implements
     private void writeAsciiLong(final long number, final int length,
             final int radix) throws IOException {
         final StringBuilder tmp = new StringBuilder();
-        String tmpStr;
+        final String tmpStr;
         if (radix == 16) {
             tmp.append(Long.toHexString(number));
         } else if (radix == 8) {
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveConstants.java
 
b/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveConstants.java
index 2430f4a..920a623 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveConstants.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveConstants.java
@@ -47,7 +47,7 @@ public final class DumpArchiveConstants {
         END(5),
         CLRI(6);
 
-        int code;
+        final int code;
 
         SEGMENT_TYPE(final int code) {
             this.code = code;
@@ -72,7 +72,7 @@ public final class DumpArchiveConstants {
         BZLIB(1),
         LZO(2);
 
-        int code;
+        final int code;
 
         COMPRESSION_TYPE(final int code) {
             this.code = code;
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveEntry.java
 
b/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveEntry.java
index 42b7f46..86558e8 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveEntry.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveEntry.java
@@ -787,7 +787,7 @@ public class DumpArchiveEntry implements ArchiveEntry {
         FIFO(1),
         UNKNOWN(15);
 
-        private int code;
+        private final int code;
 
         TYPE(final int code) {
             this.code = code;
@@ -820,7 +820,7 @@ public class DumpArchiveEntry implements ArchiveEntry {
         WORLD_WRITE(00002),
         WORLD_EXEC(00001);
 
-        private int code;
+        private final int code;
 
         PERMISSION(final int code) {
             this.code = code;
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveInputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveInputStream.java
index 022c4df..a8dcac4 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/dump/DumpArchiveInputStream.java
@@ -48,7 +48,7 @@ import java.util.Stack;
  * @NotThreadSafe
  */
 public class DumpArchiveInputStream extends ArchiveInputStream {
-    private DumpArchiveSummary summary;
+    private final DumpArchiveSummary summary;
     private DumpArchiveEntry active;
     private boolean isClosed;
     private boolean hasHitEOF;
@@ -59,7 +59,7 @@ public class DumpArchiveInputStream extends 
ArchiveInputStream {
     private byte[] blockBuffer;
     private int recordOffset;
     private long filepos;
-    protected TapeInputStream raw;
+    protected final TapeInputStream raw;
 
     // map of ino -> dirent entry. We can use this to reconstruct full paths.
     private final Map<Integer, Dirent> names = new HashMap<>();
@@ -68,7 +68,7 @@ public class DumpArchiveInputStream extends 
ArchiveInputStream {
     private final Map<Integer, DumpArchiveEntry> pending = new HashMap<>();
 
     // queue of (directory) entries where we now have the full path.
-    private Queue<DumpArchiveEntry> queue;
+    private final Queue<DumpArchiveEntry> queue;
 
     /**
      * The encoding to use for file names and labels.
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/sevenz/BoundedSeekableByteChannelInputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/sevenz/BoundedSeekableByteChannelInputStream.java
index 364403a..ca8b754 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/sevenz/BoundedSeekableByteChannelInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/sevenz/BoundedSeekableByteChannelInputStream.java
@@ -75,8 +75,8 @@ class BoundedSeekableByteChannelInputStream extends 
InputStream {
         if (bytesToRead > bytesRemaining) {
             bytesToRead = (int) bytesRemaining;
         }
-        int bytesRead;
-        ByteBuffer buf;
+        final int bytesRead;
+        final ByteBuffer buf;
         if (bytesToRead <= buffer.capacity()) {
             buf = buffer;
             bytesRead = read(bytesToRead);
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/sevenz/Coders.java 
b/src/main/java/org/apache/commons/compress/archivers/sevenz/Coders.java
index 8e3394c..e2fe69a 100644
--- a/src/main/java/org/apache/commons/compress/archivers/sevenz/Coders.java
+++ b/src/main/java/org/apache/commons/compress/archivers/sevenz/Coders.java
@@ -157,7 +157,7 @@ class Coders {
 
          static class DeflateDecoderInputStream extends InputStream {
 
-              InflaterInputStream inflaterInputStream;
+              final InflaterInputStream inflaterInputStream;
               Inflater inflater;
 
             public DeflateDecoderInputStream(final InflaterInputStream 
inflaterInputStream,
@@ -193,7 +193,7 @@ class Coders {
 
          static class DeflateDecoderOutputStream extends OutputStream {
 
-              DeflaterOutputStream deflaterOutputStream;
+              final DeflaterOutputStream deflaterOutputStream;
               Deflater deflater;
 
             public DeflateDecoderOutputStream(final DeflaterOutputStream 
deflaterOutputStream,
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java 
b/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java
index 5624b4c..5cdf12f 100644
--- a/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java
+++ b/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java
@@ -976,10 +976,11 @@ public class SevenZFile implements Closeable {
                     }
                     assertFitsIntoInt("file names length", size - 1);
                     final byte[] names = new byte[(int) (size - 1)];
+                    final int namesLength = names.length;
                     header.get(names);
                     int nextFile = 0;
                     int nextName = 0;
-                    for (int i = 0; i < names.length; i += 2) {
+                    for (int i = 0; i < namesLength; i += 2) {
                         if (names[i] == 0 && names[i + 1] == 0) {
                             checkEntryIsInitialized(fileMap, nextFile);
                             fileMap.get(nextFile).setName(new String(names, 
nextName, i - nextName, StandardCharsets.UTF_16LE));
@@ -987,7 +988,7 @@ public class SevenZFile implements Closeable {
                             nextFile++;
                         }
                     }
-                    if (nextName != names.length || nextFile != numFiles) {
+                    if (nextName != namesLength || nextFile != numFiles) {
                         throw new IOException("Error parsing file names");
                     }
                     break;
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZMethod.java 
b/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZMethod.java
index 3c446cc..03d1166 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZMethod.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZMethod.java
@@ -97,8 +97,9 @@ public enum SevenZMethod {
     }
 
     byte[] getId() {
-        final byte[] copy = new byte[id.length];
-        System.arraycopy(id, 0, copy, 0, id.length);
+        final int idLength = id.length;
+        final byte[] copy = new byte[idLength];
+        System.arraycopy(id, 0, copy, 0, idLength);
         return copy;
     }
 
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java
index ea68d7c..c69d4a6 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java
@@ -1110,7 +1110,7 @@ public class TarArchiveInputStream extends 
ArchiveInputStream {
                 final Long qOffset = q.getOffset();
                 return pOffset.compareTo(qOffset);
             };
-            Collections.sort(sparseHeaders, sparseHeaderComparator);
+            sparseHeaders.sort(sparseHeaderComparator);
         }
 
         if (sparseHeaders != null) {
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
index bcf59b9..c5cff5e 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
@@ -208,7 +208,7 @@ public class TarArchiveOutputStream extends 
ArchiveOutputStream {
      */
     public TarArchiveOutputStream(final OutputStream os, final int blockSize,
         final String encoding) {
-        int realBlockSize;
+        final int realBlockSize;
         if (BLOCK_SIZE_UNSPECIFIED == blockSize) {
             realBlockSize = RECORD_SIZE;
         } else {
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/AsiExtraField.java 
b/src/main/java/org/apache/commons/compress/archivers/zip/AsiExtraField.java
index 1909a2f..cb0e7a1 100644
--- a/src/main/java/org/apache/commons/compress/archivers/zip/AsiExtraField.java
+++ b/src/main/java/org/apache/commons/compress/archivers/zip/AsiExtraField.java
@@ -287,16 +287,17 @@ public class AsiExtraField implements ZipExtraField, 
UnixStat, Cloneable {
         final int newMode = ZipShort.getValue(tmp, 0);
         // CheckStyle:MagicNumber OFF
         final byte[] linkArray = new byte[(int) ZipLong.getValue(tmp, 2)];
+        final int linkArrayLength = linkArray.length;
         uid = ZipShort.getValue(tmp, 6);
         gid = ZipShort.getValue(tmp, 8);
 
-        if (linkArray.length == 0) {
+        if (linkArrayLength == 0) {
             link = "";
-        } else if (linkArray.length > tmp.length - 10) {
-            throw new ZipException("Bad symbolic link name length " + 
linkArray.length
+        } else if (linkArrayLength > tmp.length - 10) {
+            throw new ZipException("Bad symbolic link name length " + 
linkArrayLength
                 + " in ASI extra field");
         } else {
-            System.arraycopy(tmp, 10, linkArray, 0, linkArray.length);
+            System.arraycopy(tmp, 10, linkArray, 0, linkArrayLength);
             link = new String(linkArray); // Uses default charset - see class 
Javadoc
         }
         // CheckStyle:MagicNumber ON
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java 
b/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java
index 6a746ed..c141973 100644
--- a/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java
+++ b/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java
@@ -150,17 +150,18 @@ class BinaryTree {
             maxLength = Math.max(maxLength, bitLength);
         }
 
+        final int oBitLengths = originalBitLengths.length;
         // sort the array of bit lengths and memorize the permutation used to 
restore the order of the codes
-        final int[] permutation = new int[originalBitLengths.length];
+        final int[] permutation = new int[oBitLengths];
         for (int k = 0; k < permutation.length; k++) {
             permutation[k] = k;
         }
 
         int c = 0;
-        final int[] sortedBitLengths = new int[originalBitLengths.length];
-        for (int k = 0; k < originalBitLengths.length; k++) {
+        final int[] sortedBitLengths = new int[oBitLengths];
+        for (int k = 0; k < oBitLengths; k++) {
             // iterate over the values
-            for (int l = 0; l < originalBitLengths.length; l++) {
+            for (int l = 0; l < oBitLengths; l++) {
                 // look for the value in the original array
                 if (originalBitLengths[l] == k) {
                     // put the value at the current position in the sorted 
array...
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/ExplodingInputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/zip/ExplodingInputStream.java
index 3e69bb9..636fd35 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/zip/ExplodingInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/zip/ExplodingInputStream.java
@@ -167,7 +167,7 @@ class ExplodingInputStream extends InputStream implements 
InputStreamStatistics
             return;
         } else if (bit == 1) {
             // literal value
-            int literal;
+            final int literal;
             if (literalTree != null) {
                 literal = literalTree.read(bits);
             } else {
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java 
b/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java
index a1600bc..886df81 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java
@@ -193,12 +193,13 @@ public class ExtraFieldUtils {
         throws ZipException {
         final List<ZipExtraField> v = new ArrayList<>();
         int start = 0;
+        final int dataLength = data.length;
         LOOP:
-        while (start <= data.length - WORD) {
+        while (start <= dataLength - WORD) {
             final ZipShort headerId = new ZipShort(data, start);
             final int length = new ZipShort(data, start + 2).getValue();
-            if (start + WORD + length > data.length) {
-                final ZipExtraField field = 
parsingBehavior.onUnparseableExtraField(data, start, data.length - start,
+            if (start + WORD + length > dataLength) {
+                final ZipExtraField field = 
parsingBehavior.onUnparseableExtraField(data, start, dataLength - start,
                     local, length);
                 if (field != null) {
                     v.add(field);
@@ -228,10 +229,11 @@ public class ExtraFieldUtils {
      * @return an array of bytes
      */
     public static byte[] mergeLocalFileDataData(final ZipExtraField[] data) {
-        final boolean lastIsUnparseableHolder = data.length > 0
-            && data[data.length - 1] instanceof UnparseableExtraFieldData;
+        final int dataLength = data.length;
+        final boolean lastIsUnparseableHolder = dataLength > 0
+            && data[dataLength - 1] instanceof UnparseableExtraFieldData;
         final int regularExtraFieldCount =
-            lastIsUnparseableHolder ? data.length - 1 : data.length;
+            lastIsUnparseableHolder ? dataLength - 1 : dataLength;
 
         int sum = WORD * regularExtraFieldCount;
         for (final ZipExtraField element : data) {
@@ -253,7 +255,7 @@ public class ExtraFieldUtils {
             }
         }
         if (lastIsUnparseableHolder) {
-            final byte[] local = data[data.length - 1].getLocalFileDataData();
+            final byte[] local = data[dataLength - 1].getLocalFileDataData();
             if (local != null) {
                 System.arraycopy(local, 0, result, start, local.length);
             }
@@ -267,10 +269,11 @@ public class ExtraFieldUtils {
      * @return an array of bytes
      */
     public static byte[] mergeCentralDirectoryData(final ZipExtraField[] data) 
{
-        final boolean lastIsUnparseableHolder = data.length > 0
-            && data[data.length - 1] instanceof UnparseableExtraFieldData;
+        final int dataLength = data.length;
+        final boolean lastIsUnparseableHolder = dataLength > 0
+            && data[dataLength - 1] instanceof UnparseableExtraFieldData;
         final int regularExtraFieldCount =
-            lastIsUnparseableHolder ? data.length - 1 : data.length;
+            lastIsUnparseableHolder ? dataLength - 1 : dataLength;
 
         int sum = WORD * regularExtraFieldCount;
         for (final ZipExtraField element : data) {
@@ -291,7 +294,7 @@ public class ExtraFieldUtils {
             }
         }
         if (lastIsUnparseableHolder) {
-            final byte[] central = data[data.length - 
1].getCentralDirectoryData();
+            final byte[] central = data[dataLength - 
1].getCentralDirectoryData();
             if (central != null) {
                 System.arraycopy(central, 0, result, start, central.length);
             }
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntry.java 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntry.java
index 9b5e682..085aa19 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntry.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntry.java
@@ -932,7 +932,7 @@ public class ZipArchiveEntry extends java.util.zip.ZipEntry
             setExtraFields(f);
         } else {
             for (final ZipExtraField element : f) {
-                ZipExtraField existing;
+                final ZipExtraField existing;
                 if (element instanceof UnparseableExtraFieldData) {
                     existing = unparseableExtra;
                 } else {
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStream.java
index 32bb562..787caa7 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStream.java
@@ -494,7 +494,7 @@ public class ZipArchiveInputStream extends 
ArchiveInputStream implements InputSt
                     current.entry);
         }
 
-        int read;
+        final int read;
         if (current.entry.getMethod() == ZipArchiveOutputStream.STORED) {
             read = readStored(buffer, offset, length);
         } else if (current.entry.getMethod() == 
ZipArchiveOutputStream.DEFLATED) {
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveOutputStream.java
 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveOutputStream.java
index 02f0cf1..33ea87a 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveOutputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipArchiveOutputStream.java
@@ -854,8 +854,8 @@ public class ZipArchiveOutputStream extends 
ArchiveOutputStream {
 
             final Zip64ExtendedInformationExtraField z64 = 
getZip64Extra(entry.entry);
 
-            ZipEightByteInteger size;
-            ZipEightByteInteger compressedSize;
+            final ZipEightByteInteger size;
+            final ZipEightByteInteger compressedSize;
             if (phased) {
                 // sizes are already known
                 size = new ZipEightByteInteger(entry.entry.getSize());
@@ -1379,6 +1379,7 @@ public class ZipArchiveOutputStream extends 
ArchiveOutputStream {
         }
 
         final byte[] extra = ze.getCentralDirectoryExtra();
+        final int extraLength = extra.length;
 
         // file comment length
         String comm = ze.getComment();
@@ -1389,7 +1390,7 @@ public class ZipArchiveOutputStream extends 
ArchiveOutputStream {
         final ByteBuffer commentB = getEntryEncoding(ze).encode(comm);
         final int nameLen = name.limit() - name.position();
         final int commentLen = commentB.limit() - commentB.position();
-        final int len= CFH_FILENAME_OFFSET + nameLen + extra.length + 
commentLen;
+        final int len= CFH_FILENAME_OFFSET + nameLen + extraLength + 
commentLen;
         final byte[] buf = new byte[len];
 
         System.arraycopy(CFH_SIG,  0, buf, CFH_SIG_OFFSET, WORD);
@@ -1429,7 +1430,7 @@ public class ZipArchiveOutputStream extends 
ArchiveOutputStream {
         putShort(nameLen, buf, CFH_FILENAME_LENGTH_OFFSET);
 
         // extra field length
-        putShort(extra.length, buf, CFH_EXTRA_LENGTH_OFFSET);
+        putShort(extraLength, buf, CFH_EXTRA_LENGTH_OFFSET);
 
         putShort(commentLen, buf, CFH_COMMENT_LENGTH_OFFSET);
 
@@ -1461,9 +1462,9 @@ public class ZipArchiveOutputStream extends 
ArchiveOutputStream {
         System.arraycopy(name.array(), name.arrayOffset(), buf, 
CFH_FILENAME_OFFSET, nameLen);
 
         final int extraStart = CFH_FILENAME_OFFSET + nameLen;
-        System.arraycopy(extra, 0, buf, extraStart, extra.length);
+        System.arraycopy(extra, 0, buf, extraStart, extraLength);
 
-        final int commentStart = extraStart + extra.length;
+        final int commentStart = extraStart + extraLength;
 
         // file comment
         System.arraycopy(commentB.array(), commentB.arrayOffset(), buf, 
commentStart, commentLen);
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipFile.java 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipFile.java
index 3bf0b43..c1a085d 100644
--- a/src/main/java/org/apache/commons/compress/archivers/zip/ZipFile.java
+++ b/src/main/java/org/apache/commons/compress/archivers/zip/ZipFile.java
@@ -1371,7 +1371,7 @@ public class ZipFile implements Closeable {
                 len = (int)(end-loc);
             }
 
-            ByteBuffer buf;
+            final ByteBuffer buf;
             buf = ByteBuffer.wrap(b, off, len);
             final int ret = read(loc, buf);
             if (ret > 0) {
@@ -1381,7 +1381,7 @@ public class ZipFile implements Closeable {
         }
 
         protected int read(final long pos, final ByteBuffer buf) throws 
IOException {
-            int read;
+            final int read;
             synchronized (archive) {
                 archive.position(pos);
                 read = archive.read(buf);
diff --git 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipSplitReadOnlySeekableByteChannel.java
 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipSplitReadOnlySeekableByteChannel.java
index 3756198..7912615 100644
--- 
a/src/main/java/org/apache/commons/compress/archivers/zip/ZipSplitReadOnlySeekableByteChannel.java
+++ 
b/src/main/java/org/apache/commons/compress/archivers/zip/ZipSplitReadOnlySeekableByteChannel.java
@@ -178,7 +178,7 @@ public class ZipSplitReadOnlySeekableByteChannel extends 
MultiReadOnlySeekableBy
             }
         }
 
-        Collections.sort(splitZipSegments, new ZipSplitSegmentComparator());
+        splitZipSegments.sort(new ZipSplitSegmentComparator());
         return forFiles(lastSegmentFile, splitZipSegments);
     }
 
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/brotli/BrotliUtils.java 
b/src/main/java/org/apache/commons/compress/compressors/brotli/BrotliUtils.java
index 15a2139..0278801 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/brotli/BrotliUtils.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/brotli/BrotliUtils.java
@@ -61,7 +61,7 @@ public class BrotliUtils {
         try {
             Class.forName("org.brotli.dec.BrotliInputStream");
             return true;
-        } catch (NoClassDefFoundError | Exception error) { // NOSONAR
+        } catch (final NoClassDefFoundError | Exception error) { // NOSONAR
             return false;
         }
     }
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java
 
b/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java
index 437bef8..fca6597 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java
@@ -930,7 +930,7 @@ public class BZip2CompressorInputStream extends 
CompressorInputStream
         // 60798 byte
 
         int[] tt; // 3600000 byte
-        byte[] ll8; // 900000 byte
+        final byte[] ll8; // 900000 byte
 
         // ---------------
         // 4560782 byte
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java 
b/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java
index 72993e3..d0c001b 100644
--- a/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java
+++ b/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java
@@ -367,7 +367,7 @@ class BlockSort {
             */
             r = ((r * 7621) + 1) % 32768;
             final long r3 = r % 3;
-            long med;
+            final long med;
             if (r3 == 0) {
                 med = eclass[fmap[lo]];
             } else if (r3 == 1) {
@@ -473,7 +473,7 @@ class BlockSort {
         final int[] ftab = new int[257];
         int H, i, j, k, l, r, cc, cc1;
         int nNotDone;
-        int nBhtab;
+        final int nBhtab;
         final int[] eclass = getEclass();
 
         for (i = 0; i < nblock; i++) {
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/deflate64/HuffmanDecoder.java
 
b/src/main/java/org/apache/commons/compress/compressors/deflate64/HuffmanDecoder.java
index 2baebea..227d1e1 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/deflate64/HuffmanDecoder.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/deflate64/HuffmanDecoder.java
@@ -227,7 +227,7 @@ class HuffmanDecoder implements Closeable {
             final int max = (int) Math.min(blockLength - read, len);
             int readSoFar = 0;
             while (readSoFar < max) {
-                int readNow;
+                final int readNow;
                 if (reader.bitsCached() > 0) {
                     final byte next = (byte) readBits(Byte.SIZE);
                     b[off + readSoFar] = memory.add(next);
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStream.java
 
b/src/main/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStream.java
index 9397c6e..7b89d21 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStream.java
@@ -250,7 +250,8 @@ public class BlockLZ4CompressorOutputStream extends 
CompressorOutputStream {
         while (lengthRemaining > 0) {
             // find block that contains offsetRemaining
             byte[] block = null;
-            int copyLen, copyOffset;
+            final int copyLen;
+            final int copyOffset;
             if (offsetRemaining > 0) {
                 int blockOffset = 0;
                 for (final byte[] b : expandedBlocks) {
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorOutputStream.java
 
b/src/main/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorOutputStream.java
index 81a1770..c36f7e5 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorOutputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorOutputStream.java
@@ -210,13 +210,14 @@ public class FramedLZ4CompressorOutputStream extends 
CompressorOutputStream {
         if (params.withContentChecksum) {
             contentHash.update(data, off, len);
         }
-        if (currentIndex + len > blockData.length) {
+        final int blockDataLength = blockData.length;
+        if (currentIndex + len > blockDataLength) {
             flushBlock();
-            while (len > blockData.length) {
-                System.arraycopy(data, off, blockData, 0, blockData.length);
-                off += blockData.length;
-                len -= blockData.length;
-                currentIndex = blockData.length;
+            while (len > blockDataLength) {
+                System.arraycopy(data, off, blockData, 0, blockDataLength);
+                off += blockDataLength;
+                len -= blockDataLength;
+                currentIndex = blockDataLength;
                 flushBlock();
             }
         }
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/snappy/SnappyCompressorInputStream.java
 
b/src/main/java/org/apache/commons/compress/compressors/snappy/SnappyCompressorInputStream.java
index fd80fd8..5274e3d 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/snappy/SnappyCompressorInputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/snappy/SnappyCompressorInputStream.java
@@ -245,7 +245,7 @@ public class SnappyCompressorInputStream extends 
AbstractLZ77CompressorInputStre
      * after the length.
      */
     private int readLiteralLength(final int b) throws IOException {
-        int length;
+        final int length;
         switch (b >> 2) {
         case 60:
             length = readOneByte();
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdUtils.java
 
b/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdUtils.java
index 8b2f8d3..a89b5f5 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdUtils.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdUtils.java
@@ -74,7 +74,7 @@ public class ZstdUtils {
         try {
             Class.forName("com.github.luben.zstd.ZstdInputStream");
             return true;
-        } catch (NoClassDefFoundError | Exception error) { // NOSONAR
+        } catch (final NoClassDefFoundError | Exception error) { // NOSONAR
             return false;
         }
     }
diff --git a/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java 
b/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java
index 5d17bb2..72c857d 100644
--- a/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java
+++ b/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java
@@ -71,7 +71,7 @@ public class ArchiveUtils {
      */
     public static boolean matchAsciiBuffer(
             final String expected, final byte[] buffer, final int offset, 
final int length){
-        byte[] buffer1;
+        final byte[] buffer1;
         buffer1 = expected.getBytes(StandardCharsets.US_ASCII);
         return isEqual(buffer1, 0, buffer1.length, buffer, offset, length, 
false);
     }
diff --git 
a/src/main/java/org/apache/commons/compress/utils/BitInputStream.java 
b/src/main/java/org/apache/commons/compress/utils/BitInputStream.java
index d9caff1..e683b50 100644
--- a/src/main/java/org/apache/commons/compress/utils/BitInputStream.java
+++ b/src/main/java/org/apache/commons/compress/utils/BitInputStream.java
@@ -139,7 +139,7 @@ public class BitInputStream implements Closeable {
 
     private long processBitsGreater57(final int count) throws IOException {
         final long bitsOut;
-        int overflowBits;
+        final int overflowBits;
         long overflow = 0L;
 
         // bitsCachedSize >= 57 and left-shifting it 8 bits would cause an 
overflow
diff --git a/src/test/java/org/apache/commons/compress/AbstractTestCase.java 
b/src/test/java/org/apache/commons/compress/AbstractTestCase.java
index 8494514..f419fac 100644
--- a/src/test/java/org/apache/commons/compress/AbstractTestCase.java
+++ b/src/test/java/org/apache/commons/compress/AbstractTestCase.java
@@ -55,7 +55,7 @@ public abstract class AbstractTestCase {
     private File archive; // used to delete the archive in tearDown
     protected List<String> archiveList; // Lists the content of the archive as 
originally created
 
-    protected ArchiveStreamFactory factory = ArchiveStreamFactory.DEFAULT;
+    protected final ArchiveStreamFactory factory = 
ArchiveStreamFactory.DEFAULT;
 
     @Before
     public void setUp() throws Exception {
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java 
b/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java
index 2b396a1..ccdb00d 100644
--- a/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java
+++ b/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java
@@ -344,9 +344,9 @@ public final class ZipTestCase extends AbstractTestCase {
             rmdir(tmp[0]);
         }
     }
-    String first_payload = "ABBA";
-    String second_payload = "AAAAAAAAAAAA";
-    ZipArchiveEntryPredicate allFilesPredicate = zipArchiveEntry -> true;
+    final String first_payload = "ABBA";
+    final String second_payload = "AAAAAAAAAAAA";
+    final ZipArchiveEntryPredicate allFilesPredicate = zipArchiveEntry -> true;
 
     @Test
     public void testCopyRawEntriesFromFile()
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/examples/ExpanderTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/examples/ExpanderTest.java
index c8f978a..e3aa0dd 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/examples/ExpanderTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/examples/ExpanderTest.java
@@ -47,7 +47,7 @@ import org.junit.rules.ExpectedException;
 public class ExpanderTest extends AbstractTestCase {
 
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     private File archive;
 
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/memory/MemoryArchiveInputStream.java
 
b/src/test/java/org/apache/commons/compress/archivers/memory/MemoryArchiveInputStream.java
index a3b8347..26cd306 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/memory/MemoryArchiveInputStream.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/memory/MemoryArchiveInputStream.java
@@ -30,10 +30,11 @@ public final class MemoryArchiveInputStream extends 
ArchiveInputStream {
     private int p;
 
     public MemoryArchiveInputStream( final String[][] pFiles ) {
-        filenames = new String[pFiles.length];
-        content = new String[pFiles.length];
+        final int pFilesLength = pFiles.length;
+        filenames = new String[pFilesLength];
+        content = new String[pFilesLength];
 
-        for (int i = 0; i < pFiles.length; i++) {
+        for (int i = 0; i < pFilesLength; i++) {
             final String[] nameAndContent = pFiles[i];
             filenames[i] = nameAndContent[0];
             content[i] = nameAndContent[1];
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java
index b2ee04e..9e17159 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZFileTest.java
@@ -60,7 +60,7 @@ public class SevenZFileTest extends AbstractTestCase {
         + " connections>\r\n<meinxml>\r\n\t<leer />\r\n</meinxml>\n";
 
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     // https://issues.apache.org/jira/browse/COMPRESS-320
     @Test
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZNativeHeapTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZNativeHeapTest.java
index 7a2e6c0..5c1a855 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZNativeHeapTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/sevenz/SevenZNativeHeapTest.java
@@ -66,7 +66,7 @@ public class SevenZNativeHeapTest extends AbstractTestCase {
         public DelegatingInflater(final Inflater inflater) {
             this.inflater = inflater;
         }
-        AtomicBoolean isEnded = new AtomicBoolean();
+        final AtomicBoolean isEnded = new AtomicBoolean();
 
         @Override
         public void end() {
@@ -164,7 +164,7 @@ public class SevenZNativeHeapTest extends AbstractTestCase {
             this.deflater = deflater;
         }
 
-        AtomicBoolean isEnded = new AtomicBoolean();
+        final AtomicBoolean isEnded = new AtomicBoolean();
 
         @Override
         public void end() {
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/tar/TarLister.java 
b/src/test/java/org/apache/commons/compress/archivers/tar/TarLister.java
index 6d2a32e..f0459b7 100644
--- a/src/test/java/org/apache/commons/compress/archivers/tar/TarLister.java
+++ b/src/test/java/org/apache/commons/compress/archivers/tar/TarLister.java
@@ -44,7 +44,7 @@ public final class TarLister {
             System.err.println(f + " doesn't exist or is a directory");
         }
         final InputStream fis = new BufferedInputStream(new 
FileInputStream(f));
-        TarArchiveInputStream ais;
+        final TarArchiveInputStream ais;
         if (args.length > 1) {
             ais = new TarArchiveInputStream(fis, args[1]);
         } else {
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java
index efe6503..742f24f 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/zip/DataDescriptorTest.java
@@ -99,7 +99,7 @@ public class DataDescriptorTest {
             zos.closeArchiveEntry();
         }
 
-        byte[] data;
+        final byte[] data;
         try (FileInputStream fis = new FileInputStream(f)) {
             data = IOUtils.toByteArray(fis);
         }
@@ -147,7 +147,7 @@ public class DataDescriptorTest {
         }
 
         final ByteArrayOutputStream o = new ByteArrayOutputStream();
-        ZipArchiveEntry zae;
+        final ZipArchiveEntry zae;
         try (ZipFile zf = new ZipFile(f);
              ZipArchiveOutputStream zos = new ZipArchiveOutputStream(o)) {
             zae = zf.getEntry("test1.txt");
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/Lister.java 
b/src/test/java/org/apache/commons/compress/archivers/zip/Lister.java
index 19f8e5d..072b206 100644
--- a/src/test/java/org/apache/commons/compress/archivers/zip/Lister.java
+++ b/src/test/java/org/apache/commons/compress/archivers/zip/Lister.java
@@ -102,16 +102,17 @@ public final class Lister {
     private static CommandLine parse(final String[] args) {
         final CommandLine cl = new CommandLine();
         boolean error = false;
-        for (int i = 0; i < args.length; i++) {
+        final int argsLength = args.length;
+        for (int i = 0; i < argsLength; i++) {
             if (args[i].equals("-enc")) {
-                if (args.length > i + 1) {
+                if (argsLength > i + 1) {
                     cl.encoding = args[++i];
                 } else {
                     System.err.println("missing argument to -enc");
                     error = true;
                 }
             } else if (args[i].equals("-extract")) {
-                if (args.length > i + 1) {
+                if (argsLength > i + 1) {
                     cl.dir = args[++i];
                 } else {
                     System.err.println("missing argument to -extract");
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/ScatterSample.java 
b/src/test/java/org/apache/commons/compress/archivers/zip/ScatterSample.java
index deb7a7e..2ee14a3 100644
--- a/src/test/java/org/apache/commons/compress/archivers/zip/ScatterSample.java
+++ b/src/test/java/org/apache/commons/compress/archivers/zip/ScatterSample.java
@@ -25,8 +25,8 @@ import java.util.concurrent.ExecutionException;
 
 public class ScatterSample {
 
-    ParallelScatterZipCreator scatterZipCreator = new 
ParallelScatterZipCreator();
-    ScatterZipOutputStream dirs = 
ScatterZipOutputStream.fileBased(File.createTempFile("scatter-dirs", "tmp"));
+    final ParallelScatterZipCreator scatterZipCreator = new 
ParallelScatterZipCreator();
+    final ScatterZipOutputStream dirs = 
ScatterZipOutputStream.fileBased(File.createTempFile("scatter-dirs", "tmp"));
 
     public ScatterSample() throws IOException {
     }
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/UTF8ZipFilesTest.java 
b/src/test/java/org/apache/commons/compress/archivers/zip/UTF8ZipFilesTest.java
index 4293c5e..7cbf8c2 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/zip/UTF8ZipFilesTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/zip/UTF8ZipFilesTest.java
@@ -26,7 +26,6 @@ import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
 import java.nio.ByteBuffer;
 import java.nio.charset.Charset;
 import java.nio.charset.StandardCharsets;
@@ -285,7 +284,7 @@ public class UTF8ZipFilesTest extends AbstractTestCase {
     private static void createTestFile(final File file, final String encoding,
                                        final boolean withEFS,
                                        final boolean withExplicitUnicodeExtra)
-        throws UnsupportedEncodingException, IOException {
+        throws IOException {
 
         final ZipEncoding zipEncoding = 
ZipEncodingHelper.getZipEncoding(encoding);
 
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntryTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntryTest.java
index 74255f8..122d8a9 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntryTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveEntryTest.java
@@ -40,7 +40,7 @@ import org.junit.rules.ExpectedException;
 public class ZipArchiveEntryTest {
 
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     /**
      * test handling of extra fields
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java
index ea1bb53..4fa303a 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/zip/ZipArchiveInputStreamTest.java
@@ -53,7 +53,7 @@ import org.junit.rules.ExpectedException;
 public class ZipArchiveInputStreamTest {
 
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     /**
      * @see "https://issues.apache.org/jira/browse/COMPRESS-176";
@@ -697,7 +697,7 @@ public class ZipArchiveInputStreamTest {
     @Test(expected = IOException.class)
     public void throwsIOExceptionIfThereIsCorruptedZip64Extra() throws 
IOException {
         try (InputStream fis = new 
FileInputStream(getFile("COMPRESS-546.zip"));
-             ZipArchiveInputStream zipInputStream = new 
ZipArchiveInputStream(fis);) {
+             ZipArchiveInputStream zipInputStream = new 
ZipArchiveInputStream(fis)) {
             while (zipInputStream.getNextZipEntry() != null) {
             }
         }
@@ -706,7 +706,7 @@ public class ZipArchiveInputStreamTest {
     @Test
     public void testZipWithBadExtraFields() throws IOException {
         try (InputStream fis = new 
FileInputStream(getFile("COMPRESS-548.zip"));
-             ZipArchiveInputStream zipInputStream = new 
ZipArchiveInputStream(fis);) {
+             ZipArchiveInputStream zipInputStream = new 
ZipArchiveInputStream(fis)) {
             while (zipInputStream.getNextZipEntry() != null) {
             }
         }
@@ -715,7 +715,7 @@ public class ZipArchiveInputStreamTest {
     @Test
     public void testZipUsingStoredWithDDAndNoDDSignature() throws IOException {
         try (InputStream inputStream = forgeZipInputStream();
-             ZipArchiveInputStream zipInputStream = new 
ZipArchiveInputStream(inputStream, "UTF-8", true, true);) {
+             ZipArchiveInputStream zipInputStream = new 
ZipArchiveInputStream(inputStream, "UTF-8", true, true)) {
             while (zipInputStream.getNextZipEntry() != null) {
             }
         }
@@ -768,7 +768,7 @@ public class ZipArchiveInputStreamTest {
      */
     private InputStream forgeZipInputStream() throws IOException {
         try (final ByteArrayOutputStream byteArrayOutputStream = new 
ByteArrayOutputStream();
-             final ZipArchiveOutputStream zo = new 
ZipArchiveOutputStream(byteArrayOutputStream);){
+             final ZipArchiveOutputStream zo = new 
ZipArchiveOutputStream(byteArrayOutputStream)){
 
             final ZipArchiveEntry entryA = new ZipArchiveEntry("foo");
             entryA.setMethod(ZipEntry.STORED);
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/ZipSplitOutputStreamTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/zip/ZipSplitOutputStreamTest.java
index 26d6346..48d3b74 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/zip/ZipSplitOutputStreamTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/zip/ZipSplitOutputStreamTest.java
@@ -31,7 +31,7 @@ import java.nio.ByteBuffer;
 
 public class ZipSplitOutputStreamTest extends AbstractTestCase {
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     @Test
     public void throwsExceptionIfSplitSizeIsTooSmall() throws IOException {
diff --git 
a/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java 
b/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java
index 723cb58..ca41d14 100644
--- a/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java
+++ b/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java
@@ -135,7 +135,7 @@ public final class GZipTestCase extends AbstractTestCase {
 
     @Test
     public void testInteroperabilityWithGzipCompressorInputStream() throws 
Exception {
-        byte[] content;
+        final byte[] content;
         try (FileInputStream fis = new FileInputStream(getFile("test3.xml"))) {
             content = IOUtils.toByteArray(fis);
         }
@@ -161,7 +161,7 @@ public final class GZipTestCase extends AbstractTestCase {
 
     @Test
     public void testInteroperabilityWithGZIPInputStream() throws Exception {
-        byte[] content;
+        final byte[] content;
         try (FileInputStream fis = new FileInputStream(getFile("test3.xml"))) {
             content = IOUtils.toByteArray(fis);
         }
@@ -204,7 +204,7 @@ public final class GZipTestCase extends AbstractTestCase {
     }
 
     private void testExtraFlags(final int compressionLevel, final int flag) 
throws Exception {
-        byte[] content;
+        final byte[] content;
         try (FileInputStream fis = new FileInputStream(getFile("test3.xml"))) {
             content = IOUtils.toByteArray(fis);
         }
diff --git 
a/src/test/java/org/apache/commons/compress/compressors/LZMATestCase.java 
b/src/test/java/org/apache/commons/compress/compressors/LZMATestCase.java
index ad8c247..f5ea231 100644
--- a/src/test/java/org/apache/commons/compress/compressors/LZMATestCase.java
+++ b/src/test/java/org/apache/commons/compress/compressors/LZMATestCase.java
@@ -48,7 +48,7 @@ public final class LZMATestCase extends AbstractTestCase {
         try (InputStream is = new FileInputStream(input)) {
             orig = IOUtils.toByteArray(is);
         }
-        byte[] uncompressed;
+        final byte[] uncompressed;
         try (InputStream is = new FileInputStream(compressed);
              CompressorInputStream in = new LZMACompressorInputStream(is)) {
             uncompressed = IOUtils.toByteArray(in);
diff --git 
a/src/test/java/org/apache/commons/compress/compressors/bzip2/PythonTruncatedBzip2Test.java
 
b/src/test/java/org/apache/commons/compress/compressors/bzip2/PythonTruncatedBzip2Test.java
index 49f60df..5f6d366 100644
--- 
a/src/test/java/org/apache/commons/compress/compressors/bzip2/PythonTruncatedBzip2Test.java
+++ 
b/src/test/java/org/apache/commons/compress/compressors/bzip2/PythonTruncatedBzip2Test.java
@@ -40,7 +40,7 @@ import org.junit.Test;
  */
 public class PythonTruncatedBzip2Test {
 
-    private static String TEXT = 
"root:x:0:0:root:/root:/bin/bash\nbin:x:1:1:bin:/bin:\ndaemon:x:2:2:daemon:/sbin:\nadm:x:3:4:adm:/var/adm:\nlp:x:4:7:lp:/var/spool/lpd:\nsync:x:5:0:sync:/sbin:/bin/sync\nshutdown:x:6:0:shutdown:/sbin:/sbin/shutdown\nhalt:x:7:0:halt:/sbin:/sbin/halt\nmail:x:8:12:mail:/var/spool/mail:\nnews:x:9:13:news:/var/spool/news:\nuucp:x:10:14:uucp:/var/spool/uucp:\noperator:x:11:0:operator:/root:\ngames:x:12:100:games:/usr/games:\ngopher:x:13:30:gopher:/usr/lib/gophe
 [...]
+    private static final String TEXT = 
"root:x:0:0:root:/root:/bin/bash\nbin:x:1:1:bin:/bin:\ndaemon:x:2:2:daemon:/sbin:\nadm:x:3:4:adm:/var/adm:\nlp:x:4:7:lp:/var/spool/lpd:\nsync:x:5:0:sync:/sbin:/bin/sync\nshutdown:x:6:0:shutdown:/sbin:/sbin/shutdown\nhalt:x:7:0:halt:/sbin:/sbin/halt\nmail:x:8:12:mail:/var/spool/mail:\nnews:x:9:13:news:/var/spool/news:\nuucp:x:10:14:uucp:/var/spool/uucp:\noperator:x:11:0:operator:/root:\ngames:x:12:100:games:/usr/games:\ngopher:x:13:30:gopher:/usr/lib
 [...]
 
     private static byte[] DATA;
     private static byte[] TRUNCATED_DATA;
diff --git 
a/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorRoundtripTest.java
 
b/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorRoundtripTest.java
index bc36a7c..3c05c15 100644
--- 
a/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorRoundtripTest.java
+++ 
b/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorRoundtripTest.java
@@ -59,7 +59,7 @@ public final class BlockLZ4CompressorRoundtripTest extends 
AbstractTestCase {
         long start = System.currentTimeMillis();
         final File outputSz = new File(dir, input.getName() + ".block.lz4");
         try (FileInputStream is = new FileInputStream(input);
-             FileOutputStream os = new FileOutputStream(outputSz);
+             final FileOutputStream os = new FileOutputStream(outputSz);
              BlockLZ4CompressorOutputStream los = new 
BlockLZ4CompressorOutputStream(os, params)) {
             IOUtils.copy(is, los);
         }
diff --git 
a/src/test/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorInputStreamTest.java
 
b/src/test/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorInputStreamTest.java
index 22b9945..36289ec 100644
--- 
a/src/test/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorInputStreamTest.java
+++ 
b/src/test/java/org/apache/commons/compress/compressors/lz4/FramedLZ4CompressorInputStreamTest.java
@@ -45,7 +45,7 @@ public final class FramedLZ4CompressorInputStreamTest
     extends AbstractTestCase {
 
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     @Test
     public void testMatches() throws IOException {
diff --git a/src/test/java/org/apache/commons/compress/utils/CharsetsTest.java 
b/src/test/java/org/apache/commons/compress/utils/CharsetsTest.java
index 9649762..2b33bef 100644
--- a/src/test/java/org/apache/commons/compress/utils/CharsetsTest.java
+++ b/src/test/java/org/apache/commons/compress/utils/CharsetsTest.java
@@ -35,8 +35,8 @@ public class CharsetsTest {
         Assert.assertEquals(Charset.defaultCharset(), 
Charsets.toCharset((String) null));
         Assert.assertEquals(Charset.defaultCharset(), 
Charsets.toCharset((Charset) null));
         Assert.assertEquals(Charset.defaultCharset(), 
Charsets.toCharset(Charset.defaultCharset()));
-        Assert.assertEquals(Charset.forName("UTF-8"), 
Charsets.toCharset(Charset.forName("UTF-8")));
-        Assert.assertEquals(Charset.forName("UTF-8"), StandardCharsets.UTF_8);
+        Assert.assertEquals(StandardCharsets.UTF_8, 
Charsets.toCharset(StandardCharsets.UTF_8));
+        Assert.assertEquals(StandardCharsets.UTF_8, StandardCharsets.UTF_8);
     }
 
 }
diff --git 
a/src/test/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStreamTest.java
 
b/src/test/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStreamTest.java
index 9f1dd67..7997d5d 100644
--- 
a/src/test/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStreamTest.java
+++ 
b/src/test/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStreamTest.java
@@ -41,7 +41,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
 
 import org.hamcrest.core.IsInstanceOf;
 import org.junit.Test;
-import org.mockito.internal.matchers.GreaterOrEqual;
 
 public class FixedLengthBlockOutputStreamTest {
 
@@ -304,7 +303,7 @@ public class FixedLengthBlockOutputStreamTest {
 
     private static class MockOutputStream extends OutputStream {
 
-        ByteArrayOutputStream bos = new ByteArrayOutputStream();
+        final ByteArrayOutputStream bos = new ByteArrayOutputStream();
         private final int requiredWriteSize;
         private final boolean doPartialWrite;
         private final AtomicBoolean closed = new AtomicBoolean();
@@ -348,7 +347,7 @@ public class FixedLengthBlockOutputStreamTest {
 
     private static class MockWritableByteChannel implements 
WritableByteChannel {
 
-        ByteArrayOutputStream bos = new ByteArrayOutputStream();
+        final ByteArrayOutputStream bos = new ByteArrayOutputStream();
         private final int requiredWriteSize;
         private final boolean doPartialWrite;
 
@@ -370,7 +369,7 @@ public class FixedLengthBlockOutputStreamTest {
             return bytesOut;
         }
 
-        AtomicBoolean closed = new AtomicBoolean();
+        final AtomicBoolean closed = new AtomicBoolean();
 
         @Override
         public boolean isOpen() {
diff --git 
a/src/test/java/org/apache/commons/compress/utils/MultiReadOnlySeekableByteChannelTest.java
 
b/src/test/java/org/apache/commons/compress/utils/MultiReadOnlySeekableByteChannelTest.java
index 11ad833..dc9dedb 100644
--- 
a/src/test/java/org/apache/commons/compress/utils/MultiReadOnlySeekableByteChannelTest.java
+++ 
b/src/test/java/org/apache/commons/compress/utils/MultiReadOnlySeekableByteChannelTest.java
@@ -41,7 +41,7 @@ import org.junit.rules.ExpectedException;
  */
 public class MultiReadOnlySeekableByteChannelTest {
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     @Test
     public void constructorThrowsOnNullArg() {
diff --git 
a/src/test/java/org/apache/commons/compress/utils/ZipSplitReadOnlySeekableByteChannelTest.java
 
b/src/test/java/org/apache/commons/compress/utils/ZipSplitReadOnlySeekableByteChannelTest.java
index 6a725ed..1bc7c2c 100644
--- 
a/src/test/java/org/apache/commons/compress/utils/ZipSplitReadOnlySeekableByteChannelTest.java
+++ 
b/src/test/java/org/apache/commons/compress/utils/ZipSplitReadOnlySeekableByteChannelTest.java
@@ -37,7 +37,7 @@ import static 
org.apache.commons.compress.AbstractTestCase.getFile;
 
 public class ZipSplitReadOnlySeekableByteChannelTest {
     @Rule
-    public ExpectedException thrown = ExpectedException.none();
+    public final ExpectedException thrown = ExpectedException.none();
 
     @Test
     public void constructorThrowsOnNullArg() throws IOException {

Reply via email to