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 982bc5e  Add ClosedInputStream.INSTANCE and deprecate 
CLOSED_INPUT_STREAM.
982bc5e is described below

commit 982bc5e64d86aa9cf6da99bd66d74e2b4d855d6d
Author: Gary Gregory <gardgreg...@gmail.com>
AuthorDate: Mon Jul 12 14:25:32 2021 -0400

    Add ClosedInputStream.INSTANCE and deprecate CLOSED_INPUT_STREAM.
---
 src/changes/changes.xml                            |  3 +++
 .../commons/io/input/AutoCloseInputStream.java     |  2 +-
 .../commons/io/input/CloseShieldInputStream.java   |  2 +-
 .../apache/commons/io/input/ClosedInputStream.java | 22 +++++++++++++++-------
 .../io/output/AbstractByteArrayOutputStream.java   |  2 +-
 .../commons/io/input/TaggedInputStreamTest.java    |  4 ++--
 .../io/input/UncheckedFilterInputStreamTest.java   |  2 +-
 7 files changed, 24 insertions(+), 13 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 2ac90cf..793132b 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -72,6 +72,9 @@ The <action> type attribute can be add,update,fix,remove.
       <action dev="ggregory" type="add" due-to="Gary Gregory">
         Add BrokenInputStream.INSTANCE.
       </action>
+      <action dev="ggregory" type="add" due-to="Gary Gregory">
+        Add ClosedInputStream.INSTANCE and deprecate CLOSED_INPUT_STREAM.
+      </action>
       <!-- UPDATE -->
       <action dev="ggregory" type="update" due-to="Dependabot">
         Bump Maven Javadoc plugin from 3.2.0 to 3.3.0.
diff --git 
a/src/main/java/org/apache/commons/io/input/AutoCloseInputStream.java 
b/src/main/java/org/apache/commons/io/input/AutoCloseInputStream.java
index 8aa605d..86b3530 100644
--- a/src/main/java/org/apache/commons/io/input/AutoCloseInputStream.java
+++ b/src/main/java/org/apache/commons/io/input/AutoCloseInputStream.java
@@ -63,7 +63,7 @@ public class AutoCloseInputStream extends ProxyInputStream {
     @Override
     public void close() throws IOException {
         in.close();
-        in = ClosedInputStream.CLOSED_INPUT_STREAM;
+        in = ClosedInputStream.INSTANCE;
     }
 
     /**
diff --git 
a/src/main/java/org/apache/commons/io/input/CloseShieldInputStream.java 
b/src/main/java/org/apache/commons/io/input/CloseShieldInputStream.java
index 4980e3e..0fd10d5 100644
--- a/src/main/java/org/apache/commons/io/input/CloseShieldInputStream.java
+++ b/src/main/java/org/apache/commons/io/input/CloseShieldInputStream.java
@@ -61,7 +61,7 @@ public class CloseShieldInputStream extends ProxyInputStream {
      */
     @Override
     public void close() {
-        in = ClosedInputStream.CLOSED_INPUT_STREAM;
+        in = ClosedInputStream.INSTANCE;
     }
 
 }
diff --git a/src/main/java/org/apache/commons/io/input/ClosedInputStream.java 
b/src/main/java/org/apache/commons/io/input/ClosedInputStream.java
index 492743c..78951c3 100644
--- a/src/main/java/org/apache/commons/io/input/ClosedInputStream.java
+++ b/src/main/java/org/apache/commons/io/input/ClosedInputStream.java
@@ -21,12 +21,10 @@ import static org.apache.commons.io.IOUtils.EOF;
 import java.io.InputStream;
 
 /**
- * Closed input stream. This stream returns EOF to all attempts to read
- * something from the stream.
+ * Closed input stream. This stream returns EOF to all attempts to read 
something from the stream.
  * <p>
- * Typically uses of this class include testing for corner cases in methods
- * that accept input streams and acting as a sentinel value instead of a
- * {@code null} input stream.
+ * Typically uses of this class include testing for corner cases in methods 
that accept input streams and acting as a
+ * sentinel value instead of a {@code null} input stream.
  * </p>
  *
  * @since 1.4
@@ -34,9 +32,19 @@ import java.io.InputStream;
 public class ClosedInputStream extends InputStream {
 
     /**
-     * A singleton.
+     * The singleton instance.
+     *
+     * @since 2.12.0
+     */
+    public static final ClosedInputStream INSTANCE = new ClosedInputStream();
+
+    /**
+     * The singleton instance.
+     *
+     * @deprecated Use {@link #INSTANCE}.
      */
-    public static final ClosedInputStream CLOSED_INPUT_STREAM = new 
ClosedInputStream();
+    @Deprecated
+    public static final ClosedInputStream CLOSED_INPUT_STREAM = INSTANCE;
 
     /**
      * Returns -1 to indicate that the stream is closed.
diff --git 
a/src/main/java/org/apache/commons/io/output/AbstractByteArrayOutputStream.java 
b/src/main/java/org/apache/commons/io/output/AbstractByteArrayOutputStream.java
index 4fbdbae..2b3cac6 100644
--- 
a/src/main/java/org/apache/commons/io/output/AbstractByteArrayOutputStream.java
+++ 
b/src/main/java/org/apache/commons/io/output/AbstractByteArrayOutputStream.java
@@ -306,7 +306,7 @@ public abstract class AbstractByteArrayOutputStream extends 
OutputStream {
             final InputStreamConstructor<T> isConstructor) {
         int remaining = count;
         if (remaining == 0) {
-            return ClosedInputStream.CLOSED_INPUT_STREAM;
+            return ClosedInputStream.INSTANCE;
         }
         final List<T> list = new ArrayList<>(buffers.size());
         for (final byte[] buf : buffers) {
diff --git 
a/src/test/java/org/apache/commons/io/input/TaggedInputStreamTest.java 
b/src/test/java/org/apache/commons/io/input/TaggedInputStreamTest.java
index 91f05fe..112d44d 100644
--- a/src/test/java/org/apache/commons/io/input/TaggedInputStreamTest.java
+++ b/src/test/java/org/apache/commons/io/input/TaggedInputStreamTest.java
@@ -36,7 +36,7 @@ public class TaggedInputStreamTest  {
 
     @Test
     public void testEmptyStream() throws IOException {
-        final InputStream stream = new 
TaggedInputStream(ClosedInputStream.CLOSED_INPUT_STREAM);
+        final InputStream stream = new 
TaggedInputStream(ClosedInputStream.INSTANCE);
         assertEquals(0, stream.available());
         assertEquals(-1, stream.read());
         assertEquals(-1, stream.read(new byte[1]));
@@ -111,7 +111,7 @@ public class TaggedInputStreamTest  {
     @Test
     public void testOtherException() throws Exception {
         final IOException exception = new IOException("test exception");
-        final TaggedInputStream stream = new 
TaggedInputStream(ClosedInputStream.CLOSED_INPUT_STREAM);
+        final TaggedInputStream stream = new 
TaggedInputStream(ClosedInputStream.INSTANCE);
 
         assertFalse(stream.isCauseOf(exception));
         assertFalse(stream.isCauseOf(
diff --git 
a/src/test/java/org/apache/commons/io/input/UncheckedFilterInputStreamTest.java 
b/src/test/java/org/apache/commons/io/input/UncheckedFilterInputStreamTest.java
index b518c67..7732f9b 100644
--- 
a/src/test/java/org/apache/commons/io/input/UncheckedFilterInputStreamTest.java
+++ 
b/src/test/java/org/apache/commons/io/input/UncheckedFilterInputStreamTest.java
@@ -125,7 +125,7 @@ public class UncheckedFilterInputStreamTest {
 
     @Test
     public void testResetThrows() {
-        try (UncheckedFilterInputStream closedReader = 
UncheckedFilterInputStream.on(ClosedInputStream.CLOSED_INPUT_STREAM)) {
+        try (UncheckedFilterInputStream closedReader = 
UncheckedFilterInputStream.on(ClosedInputStream.INSTANCE)) {
             closedReader.close();
             assertThrows(UncheckedIOException.class, () -> 
brokenInputStream.reset());
         }

Reply via email to