We want to enable bracketing and a more orderly shutdown of resources from the input streams.
Whilst the resource is closed automatically its not very helpful if you don't want to close it.
Due to Sun bug: 6539065 we have to wrap the actual close. This allows us to decide IF we want to close.
So we cover three use cases here:
* Enumeratees can bracket, if so desired
* Streams of xml can be continuously plied for more xml messages
* Users who want to manually close early can do so too.
As a note this fits very closely to the scala-arm stuff, which I happily use in another project. But it has
two specific seperate use cases:
* XmlPulls should be joinable as iterators ++ should ensure that the resources are closed
* Additionally, however, closing on the resulting XmlPull should close the lot.
So we either override the ++ to behave differently or we abstract away using of the stream from closing it.
Mostly exists for pulling but it is general
We want to enable bracketing and a more orderly shutdown of resources from the input streams. Whilst the resource is closed automatically its not very helpful if you don't want to close it. Due to Sun bug: 6539065 we have to wrap the actual close. This allows us to decide IF we want to close.
So we cover three use cases here: * Enumeratees can bracket, if so desired * Streams of xml can be continuously plied for more xml messages * Users who want to manually close early can do so too.
As a note this fits very closely to the scala-arm stuff, which I happily use in another project. But it has two specific seperate use cases: * XmlPulls should be joinable as iterators ++ should ensure that the resources are closed * Additionally, however, closing on the resulting XmlPull should close the lot.
So we either override the ++ to behave differently or we abstract away using of the stream from closing it.