[
https://issues.apache.org/jira/browse/IO-651?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17267522#comment-17267522
]
Gary D. Gregory commented on IO-651:
------------------------------------
[~jmark]
Feel free to provide a PR on GitHub with unit tests.
> Provide method to retrieve data from DeferredFileOutputStream as InputStream
> ----------------------------------------------------------------------------
>
> Key: IO-651
> URL: https://issues.apache.org/jira/browse/IO-651
> Project: Commons IO
> Issue Type: Improvement
> Components: Streams/Writers
> Affects Versions: 2.6
> Reporter: John Mark
> Priority: Major
> Labels: easyfix, performance, pull-request-available
>
> It would be very helpful to have to {{toInputStream()}} method on the
> {{DeferredFileOutputStream}} class. Besides for convenience, it would allow
> for improved efficiency since in the case of in-memory data the byte buffer
> would not need to be copied (as opposed to the current {{getData()}} method).
> The implementation is pretty simple and can be something like the following
> (based on the current {{writeTo(OutputStream)}} method):
> {code:java}
> public InputStream toInputStream() throws IOException {
> if (!closed) {
> throw new IOException("Stream not closed");
> }
> if (isInMemory()) {
> return memoryOutputStream.toInputStream();
> } else {
> return Files.newInputStream(outputFile.toPath());
> }
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)