You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2022/06/15 19:00:50 UTC

[commons-io] branch master updated: Deprecate HexDump#EOL in favor of System#lineSeparator()

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


The following commit(s) were added to refs/heads/master by this push:
     new 78b5a4a1 Deprecate HexDump#EOL in favor of System#lineSeparator()
78b5a4a1 is described below

commit 78b5a4a1371fad7eb98aa29ef2f9a2bf2c9ecd11
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Wed Jun 15 15:00:43 2022 -0400

    Deprecate HexDump#EOL in favor of System#lineSeparator()
    
    Javadoc; format tweaks.
---
 src/main/java/org/apache/commons/io/HexDump.java   | 21 ++++++++++-----
 .../java/org/apache/commons/io/HexDumpTest.java    | 30 +++++++++++-----------
 2 files changed, 29 insertions(+), 22 deletions(-)

diff --git a/src/main/java/org/apache/commons/io/HexDump.java b/src/main/java/org/apache/commons/io/HexDump.java
index ab2ae8d6..6674668b 100644
--- a/src/main/java/org/apache/commons/io/HexDump.java
+++ b/src/main/java/org/apache/commons/io/HexDump.java
@@ -26,17 +26,20 @@ import java.util.Objects;
  * <p>
  * Provides a single function to take an array of bytes and display it
  * in hexadecimal form.
+ * </p>
  * <p>
  * Origin of code: POI.
- *
+ * </p>
  */
 public class HexDump {
 
     /**
      * The line-separator (initializes to "line.separator" system property.
+     *
+     * @deprecated Use {@link System#lineSeparator()}.
      */
-    public static final String EOL =
-            System.getProperty("line.separator");
+    @Deprecated
+    public static final String EOL = System.lineSeparator();
 
     private static final char[] HEX_CODES =
             {
@@ -48,8 +51,9 @@ public class HexDump {
             {
                 28, 24, 20, 16, 12, 8, 4, 0
             };
+
     /**
-     * Dump an array of bytes to an OutputStream. The output is formatted
+     * Dumps an array of bytes to an OutputStream. The output is formatted
      * for human inspection, with a hexadecimal offset followed by the
      * hexadecimal values of the next 16 bytes of data and the printable ASCII
      * characters (if any) that those bytes represent printed per each line
@@ -61,9 +65,11 @@ public class HexDump {
      * offset argument should be set to 2048. The offset value printed
      * at the beginning of each line indicates where in that larger entity
      * the first byte on that line is located.
+     * </p>
      * <p>
      * All bytes between the given index (inclusive) and the end of the
      * data array are dumped.
+     * </p>
      *
      * @param data  the byte array to be dumped
      * @param offset  offset of the byte array within a larger entity
@@ -111,7 +117,7 @@ public class HexDump {
                     buffer.append('.');
                 }
             }
-            buffer.append(EOL);
+            buffer.append(System.lineSeparator());
             // make explicit the dependency on the default encoding
             stream.write(buffer.toString().getBytes(Charset.defaultCharset()));
             stream.flush();
@@ -119,8 +125,9 @@ public class HexDump {
             display_offset += chars_read;
         }
     }
+
     /**
-     * Dump a byte value into a StringBuilder.
+     * Dumps a byte value into a StringBuilder.
      *
      * @param _cbuffer the StringBuilder to dump the value in
      * @param value  the byte value to be dumped
@@ -134,7 +141,7 @@ public class HexDump {
     }
 
     /**
-     * Dump a long value into a StringBuilder.
+     * Dumps a long value into a StringBuilder.
      *
      * @param _lbuffer the StringBuilder to dump the value in
      * @param value  the long value to be dumped
diff --git a/src/test/java/org/apache/commons/io/HexDumpTest.java b/src/test/java/org/apache/commons/io/HexDumpTest.java
index e47e8396..75ab9e79 100644
--- a/src/test/java/org/apache/commons/io/HexDumpTest.java
+++ b/src/test/java/org/apache/commons/io/HexDumpTest.java
@@ -39,10 +39,10 @@ public class HexDumpTest {
         ByteArrayOutputStream stream = new ByteArrayOutputStream();
 
         HexDump.dump(testArray, 0, stream, 0);
-        byte[] outputArray = new byte[16 * (73 + HexDump.EOL.length())];
+        byte[] outputArray = new byte[16 * (73 + System.lineSeparator().length())];
 
         for (int j = 0; j < 16; j++) {
-            int offset = (73 + HexDump.EOL.length()) * j;
+            int offset = (73 + System.lineSeparator().length()) * j;
 
             outputArray[offset++] = (byte) '0';
             outputArray[offset++] = (byte) '0';
@@ -61,7 +61,7 @@ public class HexDumpTest {
             for (int k = 0; k < 16; k++) {
                 outputArray[offset++] = (byte) toAscii(j * 16 + k);
             }
-            System.arraycopy(HexDump.EOL.getBytes(), 0, outputArray, offset, HexDump.EOL.getBytes().length);
+            System.arraycopy(System.lineSeparator().getBytes(), 0, outputArray, offset, System.lineSeparator().getBytes().length);
         }
         byte[] actualOutput = stream.toByteArray();
 
@@ -73,9 +73,9 @@ public class HexDumpTest {
         // verify proper behavior with non-zero offset
         stream = new ByteArrayOutputStream();
         HexDump.dump(testArray, 0x10000000, stream, 0);
-        outputArray = new byte[16 * (73 + HexDump.EOL.length())];
+        outputArray = new byte[16 * (73 + System.lineSeparator().length())];
         for (int j = 0; j < 16; j++) {
-            int offset = (73 + HexDump.EOL.length()) * j;
+            int offset = (73 + System.lineSeparator().length()) * j;
 
             outputArray[offset++] = (byte) '1';
             outputArray[offset++] = (byte) '0';
@@ -94,8 +94,8 @@ public class HexDumpTest {
             for (int k = 0; k < 16; k++) {
                 outputArray[offset++] = (byte) toAscii(j * 16 + k);
             }
-            System.arraycopy(HexDump.EOL.getBytes(), 0, outputArray, offset,
-                    HexDump.EOL.getBytes().length);
+            System.arraycopy(System.lineSeparator().getBytes(), 0, outputArray, offset,
+                    System.lineSeparator().getBytes().length);
         }
         actualOutput = stream.toByteArray();
         assertEquals(outputArray.length, actualOutput.length, "array size mismatch");
@@ -106,9 +106,9 @@ public class HexDumpTest {
         // verify proper behavior with negative offset
         stream = new ByteArrayOutputStream();
         HexDump.dump(testArray, 0xFF000000, stream, 0);
-        outputArray = new byte[16 * (73 + HexDump.EOL.length())];
+        outputArray = new byte[16 * (73 + System.lineSeparator().length())];
         for (int j = 0; j < 16; j++) {
-            int offset = (73 + HexDump.EOL.length()) * j;
+            int offset = (73 + System.lineSeparator().length()) * j;
 
             outputArray[offset++] = (byte) 'F';
             outputArray[offset++] = (byte) 'F';
@@ -127,8 +127,8 @@ public class HexDumpTest {
             for (int k = 0; k < 16; k++) {
                 outputArray[offset++] = (byte) toAscii(j * 16 + k);
             }
-            System.arraycopy(HexDump.EOL.getBytes(), 0, outputArray, offset,
-                    HexDump.EOL.getBytes().length);
+            System.arraycopy(System.lineSeparator().getBytes(), 0, outputArray, offset,
+                    System.lineSeparator().getBytes().length);
         }
         actualOutput = stream.toByteArray();
         assertEquals(outputArray.length, actualOutput.length, "array size mismatch");
@@ -139,9 +139,9 @@ public class HexDumpTest {
         // verify proper behavior with non-zero index
         stream = new ByteArrayOutputStream();
         HexDump.dump(testArray, 0x10000000, stream, 0x81);
-        outputArray = new byte[8 * (73 + HexDump.EOL.length()) - 1];
+        outputArray = new byte[8 * (73 + System.lineSeparator().length()) - 1];
         for (int j = 0; j < 8; j++) {
-            int offset = (73 + HexDump.EOL.length()) * j;
+            int offset = (73 + System.lineSeparator().length()) * j;
 
             outputArray[offset++] = (byte) '1';
             outputArray[offset++] = (byte) '0';
@@ -171,8 +171,8 @@ public class HexDumpTest {
                     outputArray[offset++] = (byte) toAscii(index);
                 }
             }
-            System.arraycopy(HexDump.EOL.getBytes(), 0, outputArray, offset,
-                    HexDump.EOL.getBytes().length);
+            System.arraycopy(System.lineSeparator().getBytes(), 0, outputArray, offset,
+                    System.lineSeparator().getBytes().length);
         }
         actualOutput = stream.toByteArray();
         assertEquals(outputArray.length, actualOutput.length, "array size mismatch");