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 342f7094 ByteArrayOrigin should be able convert a byte[] to a ByteArrayInputStream. 342f7094 is described below commit 342f7094a383f01b7bb4fc27c8832360ccdcb6f7 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Fri May 19 17:52:20 2023 -0400 ByteArrayOrigin should be able convert a byte[] to a ByteArrayInputStream. --- src/changes/changes.xml | 7 +++++-- src/main/java/org/apache/commons/io/build/AbstractOrigin.java | 6 ++++++ .../commons/io/input/MessageDigestCalculatingInputStreamTest.java | 4 ++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 25df6a24..c2a34531 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -52,11 +52,14 @@ The <action> type attribute can be add,update,fix,remove. <action issue="IO-791" dev="ggregory" type="fix" due-to="Chad Wilson, Gary Gregory"> Regression in FileUtils.touch() - no longer creates parent directories. </action> - <!-- ADD --> <action dev="ggregory" type="fix" due-to="Gary Gregory"> + ByteArrayOrigin should be able convert a byte[] to a ByteArrayInputStream. + </action> + <!-- ADD --> + <action dev="ggregory" type="add" due-to="Gary Gregory"> Add CharSequenceInputStream.Builder. </action> - <action dev="ggregory" type="fix" due-to="Gary Gregory"> + <action dev="ggregory" type="add" due-to="Gary Gregory"> Add AbstractStreamBuilder.setOpenOptions(OpenOption...). </action> <!-- UPDATE --> diff --git a/src/main/java/org/apache/commons/io/build/AbstractOrigin.java b/src/main/java/org/apache/commons/io/build/AbstractOrigin.java index d2749b0e..a51176f6 100644 --- a/src/main/java/org/apache/commons/io/build/AbstractOrigin.java +++ b/src/main/java/org/apache/commons/io/build/AbstractOrigin.java @@ -17,6 +17,7 @@ package org.apache.commons.io.build; +import java.io.ByteArrayInputStream; import java.io.File; import java.io.IOException; import java.io.InputStream; @@ -65,6 +66,11 @@ public abstract class AbstractOrigin<T, B extends AbstractOrigin<T, B>> extends return get(); } + @Override + public InputStream getInputStream(final OpenOption... options) throws IOException { + return new ByteArrayInputStream(getByteArray()); + } + } /** diff --git a/src/test/java/org/apache/commons/io/input/MessageDigestCalculatingInputStreamTest.java b/src/test/java/org/apache/commons/io/input/MessageDigestCalculatingInputStreamTest.java index 6effb6a4..517a014e 100644 --- a/src/test/java/org/apache/commons/io/input/MessageDigestCalculatingInputStreamTest.java +++ b/src/test/java/org/apache/commons/io/input/MessageDigestCalculatingInputStreamTest.java @@ -51,6 +51,10 @@ public class MessageDigestCalculatingInputStreamTest { messageDigestInputStream.consume(); assertArrayEquals(expect, messageDigestInputStream.getMessageDigest().digest()); } + try (MessageDigestCalculatingInputStream messageDigestInputStream = MessageDigestCalculatingInputStream.builder().setByteArray(buffer).get()) { + messageDigestInputStream.consume(); + assertArrayEquals(expect, messageDigestInputStream.getMessageDigest().digest()); + } } }