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-compress.git

commit 87e898fa1f4298e349fe9744187d37a2c4a94f2c
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Wed Apr 3 11:31:14 2024 -0400

    Reuse ArrayFill
---
 pom.xml                                                             | 1 +
 .../commons/compress/archivers/tar/TarArchiveOutputStream.java      | 5 ++---
 .../java/org/apache/commons/compress/archivers/zip/BinaryTree.java  | 5 ++---
 .../commons/compress/compressors/deflate64/HuffmanDecoder.java      | 4 ++--
 .../commons/compress/compressors/lz77support/LZ77Compressor.java    | 6 +++---
 .../commons/compress/archivers/tar/TarArchiveOutputStreamTest.java  | 4 ++--
 .../commons/compress/archivers/zip/ZipArchiveInputStreamTest.java   | 5 ++---
 .../java/org/apache/commons/compress/archivers/zip/ZipFileTest.java | 4 ++--
 .../compressors/lz4/BlockLZ4CompressorOutputStreamTest.java         | 5 ++---
 9 files changed, 18 insertions(+), 21 deletions(-)

diff --git a/pom.xml b/pom.xml
index 568b281d4..e1410205c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -63,6 +63,7 @@ Brotli, Zstandard and ar, cpio, jar, tar, zip, dump, 7z, arj.
       javax.crypto.*;resolution:=optional,
       org.apache.commons.io;resolution:=optional,
       org.apache.commons.io.*;resolution:=optional,
+      org.apache.commons.lang3;resolution:=optional,
       org.apache.commons.lang3.reflect;resolution:=optional,
       org.apache.commons.codec;resolution:=optional,
       org.apache.commons.codec.digest;resolution:=optional,
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 a1950c758..54de7b270 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
@@ -32,7 +32,6 @@ import java.nio.file.LinkOption;
 import java.nio.file.Path;
 import java.nio.file.attribute.FileTime;
 import java.time.Instant;
-import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -43,6 +42,7 @@ import 
org.apache.commons.compress.utils.FixedLengthBlockOutputStream;
 import org.apache.commons.compress.utils.TimeUtils;
 import org.apache.commons.io.Charsets;
 import org.apache.commons.io.output.CountingOutputStream;
+import org.apache.commons.lang3.ArrayFill;
 
 /**
  * The TarOutputStream writes a UNIX tar archive as an OutputStream. Methods 
are provided to put entries, and then write their contents by writing to this
@@ -674,8 +674,7 @@ public class TarArchiveOutputStream extends 
ArchiveOutputStream<TarArchiveEntry>
      * Writes an EOF (end of archive) record to the tar archive. An EOF record 
consists of a record of all zeros.
      */
     private void writeEOFRecord() throws IOException {
-        Arrays.fill(recordBuf, (byte) 0);
-        writeRecord(recordBuf);
+        writeRecord(ArrayFill.fill(recordBuf, (byte) 0));
     }
 
     /**
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 586a0aea7..c02fce78c 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
@@ -22,9 +22,9 @@ package org.apache.commons.compress.archivers.zip;
 import java.io.EOFException;
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.Arrays;
 
 import org.apache.commons.compress.utils.IOUtils;
+import org.apache.commons.lang3.ArrayFill;
 
 /**
  * Binary tree of positive values.
@@ -140,8 +140,7 @@ final class BinaryTree {
         if (depth < 0 || depth > 30) {
             throw new IllegalArgumentException("depth must be bigger than 0 
and not bigger than 30" + " but is " + depth);
         }
-        tree = new int[(int) ((1L << depth + 1) - 1)];
-        Arrays.fill(tree, UNDEFINED);
+        tree = ArrayFill.fill(new int[(int) ((1L << depth + 1) - 1)], 
UNDEFINED);
     }
 
     /**
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 33881a69e..4d77de9ec 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
@@ -31,6 +31,7 @@ import java.util.Arrays;
 import org.apache.commons.compress.utils.BitInputStream;
 import org.apache.commons.compress.utils.ByteUtils;
 import org.apache.commons.compress.utils.ExactMath;
+import org.apache.commons.lang3.ArrayFill;
 
 /**
  * TODO This class can't be final because it is mocked by Mockito.
@@ -361,8 +362,7 @@ class HuffmanDecoder implements Closeable {
         Arrays.fill(FIXED_LITERALS, 256, 280, 7);
         Arrays.fill(FIXED_LITERALS, 280, 288, 8);
 
-        FIXED_DISTANCE = new int[32];
-        Arrays.fill(FIXED_DISTANCE, 5);
+        FIXED_DISTANCE = ArrayFill.fill(new int[32], 5);
     }
 
     private static BinaryTreeNode buildTree(final int[] litTable) {
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/lz77support/LZ77Compressor.java
 
b/src/main/java/org/apache/commons/compress/compressors/lz77support/LZ77Compressor.java
index 224065659..1feb1e5bc 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/lz77support/LZ77Compressor.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/lz77support/LZ77Compressor.java
@@ -19,9 +19,10 @@
 package org.apache.commons.compress.compressors.lz77support;
 
 import java.io.IOException;
-import java.util.Arrays;
 import java.util.Objects;
 
+import org.apache.commons.lang3.ArrayFill;
+
 /**
  * Helper class for compression algorithms that use the ideas of LZ77.
  *
@@ -285,8 +286,7 @@ public class LZ77Compressor {
         final int wSize = params.getWindowSize();
         window = new byte[wSize * 2];
         wMask = wSize - 1;
-        head = new int[HASH_SIZE];
-        Arrays.fill(head, NO_MATCH);
+        head = ArrayFill.fill(new int[HASH_SIZE], NO_MATCH);
         prev = new int[wSize];
     }
 
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java
 
b/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java
index cbfee27e2..e1fd352a1 100644
--- 
a/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java
+++ 
b/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java
@@ -48,6 +48,7 @@ import 
org.apache.commons.compress.archivers.ArchiveOutputStream;
 import org.apache.commons.compress.archivers.ArchiveStreamFactory;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.output.NullOutputStream;
+import org.apache.commons.lang3.ArrayFill;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 
@@ -147,8 +148,7 @@ public class TarArchiveOutputStreamTest extends 
AbstractTest {
         assertThrows(IllegalArgumentException.class, () -> testPadding(0, 
fileName, contents));
 
         // test with "content" that is an exact multiple of record length
-        final byte[] contents2 = new byte[2048];
-        java.util.Arrays.fill(contents2, (byte) 42);
+        final byte[] contents2 = ArrayFill.fill(new byte[2048], (byte) 42);
         testPadding(TarConstants.DEFAULT_BLKSIZE, fileName, contents2);
     }
 
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 50551d300..0a2fd6506 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
@@ -40,7 +40,6 @@ import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.time.Instant;
-import java.util.Arrays;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipException;
 
@@ -50,6 +49,7 @@ import 
org.apache.commons.compress.archivers.ArchiveInputStream;
 import org.apache.commons.compress.archivers.ArchiveStreamFactory;
 import org.apache.commons.compress.utils.ByteUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.ArrayFill;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.ValueSource;
@@ -666,8 +666,7 @@ public class ZipArchiveInputStreamTest extends AbstractTest 
{
         try (ZipArchiveInputStream in = new 
ZipArchiveInputStream(newInputStream("bzip2-zip.zip"))) {
             final ZipArchiveEntry ze = in.getNextZipEntry();
             assertEquals(42, ze.getSize());
-            final byte[] expected = new byte[42];
-            Arrays.fill(expected, (byte) 'a');
+            final byte[] expected = ArrayFill.fill(new byte[42], (byte) 'a');
             assertArrayEquals(expected, IOUtils.toByteArray(in));
         }
     }
diff --git 
a/src/test/java/org/apache/commons/compress/archivers/zip/ZipFileTest.java 
b/src/test/java/org/apache/commons/compress/archivers/zip/ZipFileTest.java
index 292c43856..b7fac2aaa 100644
--- a/src/test/java/org/apache/commons/compress/archivers/zip/ZipFileTest.java
+++ b/src/test/java/org/apache/commons/compress/archivers/zip/ZipFileTest.java
@@ -58,6 +58,7 @@ import org.apache.commons.compress.utils.ByteUtils;
 import org.apache.commons.compress.utils.SeekableInMemoryByteChannel;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.function.IORunnable;
+import org.apache.commons.lang3.ArrayFill;
 import org.apache.commons.lang3.SystemUtils;
 import org.junit.Assume;
 import org.junit.jupiter.api.AfterEach;
@@ -939,8 +940,7 @@ public class ZipFileTest extends AbstractTest {
         zf = new ZipFile(archive);
         final ZipArchiveEntry ze = zf.getEntry("lots-of-as");
         assertEquals(42, ze.getSize());
-        final byte[] expected = new byte[42];
-        Arrays.fill(expected, (byte) 'a');
+        final byte[] expected = ArrayFill.fill(new byte[42], (byte) 'a');
         try (InputStream inputStream = zf.getInputStream(ze)) {
             assertArrayEquals(expected, IOUtils.toByteArray(inputStream));
         }
diff --git 
a/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStreamTest.java
 
b/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStreamTest.java
index 6d545472c..4f4dfb571 100644
--- 
a/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStreamTest.java
+++ 
b/src/test/java/org/apache/commons/compress/compressors/lz4/BlockLZ4CompressorOutputStreamTest.java
@@ -28,6 +28,7 @@ import java.io.IOException;
 import java.util.Arrays;
 
 import org.apache.commons.compress.compressors.lz77support.LZ77Compressor;
+import org.apache.commons.lang3.ArrayFill;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 
@@ -74,9 +75,7 @@ public class BlockLZ4CompressorOutputStreamTest {
     }
 
     private byte[] prepareExpected(final int length) {
-        final byte[] b = new byte[length];
-        Arrays.fill(b, (byte) -1);
-        return b;
+        return ArrayFill.fill(new byte[length], (byte) -1);
     }
 
     @Test

Reply via email to