[ 
https://issues.apache.org/jira/browse/IO-92?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12534864
 ] 

Niall Pemberton commented on IO-92:
-----------------------------------

Sorry I don't really see the point of this - how is this different from 
decorating a FileOutputStream with a BufferedOutputStream? Also I don't see the 
point in implementing DataOutput - since you can decorate any output stream 
using DataOutputStream to achieve this.

File myFile = ...
OutputStream out = new BufferedOutputStream(new FileOutputStream(myFile));
...
DataOutput dataOut = new DataOutputStream(out);
out.writeInt(...);

> Add DeferredPeriodicOutputStream
> --------------------------------
>
>                 Key: IO-92
>                 URL: https://issues.apache.org/jira/browse/IO-92
>             Project: Commons IO
>          Issue Type: New Feature
>          Components: Streams/Writers
>         Environment: Windows XP SP2, jdk 1.5
>            Reporter: Michele Mazzucco
>             Fix For: 1.4
>
>         Attachments: DeferredPeriodicOutputStream.java, 
> DeferredPeriodicOutputStream.java, DeferredPeriodicOutputStream.java, 
> DeferredPeriodicOutputStreamTest.java, DeferredPeriodicOutputStreamTest.java, 
> DeferredPeriodicOutputStreamTest.java
>
>
> I've extended the ThresholdingOutputStream class with a new class which
> behaves different from DeferredFileOutputStream:
> - when the stream is closed, the content stored in memory is *always* flushed 
> to disk (in DeferredFileOutputStream, instead, if the treshold
> is not reached data is lost)
> - DeferredFileOutputStream maintains data in memory only until the treshold 
> value has been reached, then it immediately writes every byte
> to disk. This new implementation, instead, caches treshold bytes in memory, 
> and every time that value is reached (that is, treshold, 2 * threshold, etc), 
> it flushes data to disk. In other words it acts as a cache.
> - It implements the java.io.DataOutput interface, that is, it provides 
> utility methods to write all primitive types (e.g. short, byte, char, int, 
> float, long, double and String in different formats)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to