Hi Rob,

I imagine that the classes you mention might be missing based on the YAGNI
principle. I offer that you consider real use cases before plunging into
implementation. We do not want to bloat this component just for the sake of
completeness.

Don't forget to get as close as possible to 100% code coverage with unit
tests for new code in your PRs ;-)

Gary

On Thu, Aug 1, 2019 at 6:39 AM Rob Spoor <apa...@icemanx.nl> wrote:

> Hi,
>
> I noticed that a lot of InputStream / OutputStream implementations do
> not have a matching Reader / Writer implementation. Some would really be
> useful.
>
> I've made an overview of classes that could be added:
> * AutoCloseReader
> * BrokenReader
> * CloseShieldReader
> * ClosedReader
> * CountingReader
> * DemuxReader
> * InfiniteCircularReader
> * ObservableReader
> * TaggedReader
> * TeeReader
> * UnixLineEndingReader
> * WindowsLineEndingReader
>
> * AppendableWriter
> * BrokenWriter
> * CloseShieldWriter
> * ClosedWriter
> * CountingWriter
> * DeferredFileWriter
> * DemuxWriter
> * TaggedWriter
> * TeeWriter
> * ThresholdingWriter
>
>
> I am willing to write the following (based on the InputStream
> implementations), if needed. I have signed the ICLA, have a JIRA account
> (username Spoor) and a GitHub account (username robtimus):
>
> * AutoCloseReader
> * BrokenReader
> * CloseShieldReader
> * ClosedReader
> * CountingReader
> * TaggedReader
> * TeeReader
>
> * AppendableWriter
> * BrokenWriter
> * CloseShieldWriter
> * ClosedWriter
> * CountingWriter
> * TaggedWriter
> * TeeWriter
>
>
> In addition, if AppendableWriter is added, I think there should be a
> method added to IOUtils, to prevent having to create an AppendableWriter
> for an object that's already a Writer:
>
>      public static Writer writer(final Appendable appendable) {
>          if (appendable == null) {
>              throw new NullPointerException();
>          }
>          return appendable instanceof Writer ?
>                  (Writer) appendable : new AppendableWriter(appendable);
>      }
>
>
> Kind regards,
>
> Rob
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
>
>

Reply via email to