[
https://issues.apache.org/jira/browse/IO-181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12779533#action_12779533
]
Michael Ernst commented on IO-181:
----------------------------------
The potential problem with this design is that it assumes that there is exactly
one iterator for the object at a time. Clients may expect that it is possible
to have multiple iterators over a given Iterable, and thus may expect that each
call to Iterable.iterator returns a fresh iterator that shares no state with
other iterators. (Clients shouldn't expect this in the absence of
documentation, but they might.)
I think it's worth it for the convenience, so long as this behavior is
documented.
> LineIterator should implement Iterable
> ---------------------------------------
>
> Key: IO-181
> URL: https://issues.apache.org/jira/browse/IO-181
> Project: Commons IO
> Issue Type: Improvement
> Affects Versions: 1.4
> Reporter: Michael Ernst
> Original Estimate: 1h
> Remaining Estimate: 1h
>
> org.apache.commons.io.LineIterator does not implement Iterable. This makes
> it impossible to use in certain stylized ways, such as in a new-style for
> statement. Such use is not always desirable (it might temporarily leak a
> file descriptor, until the finalizer is called), but should be possible in
> situations where it is known to be acceptable.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.