src/share/classes/java/util/stream/IntStream.java

Print this page
rev 7962 : 8017513: Support for closeable streams
8022237: j.u.s.BaseStream.onClose() has an issue in implementation or requires spec clarification
8022572: Same exception instances thrown from j.u.stream.Stream.onClose() handlers are not listed as suppressed
Summary: BaseStream implements AutoCloseable; Remove CloseableStream and DelegatingStream
Reviewed-by:
Contributed-by: brian.goetz@oracle.com

*** 804,814 **** /** * Creates a lazy concatenated {@code IntStream} whose elements are all the * elements of a first {@code IntStream} succeeded by all the elements of the * second {@code IntStream}. The resulting stream is ordered if both * of the input streams are ordered, and parallel if either of the input ! * streams is parallel. * * @param a the first stream * @param b the second stream to concatenate on to end of the first stream * @return the concatenation of the two streams */ --- 804,815 ---- /** * Creates a lazy concatenated {@code IntStream} whose elements are all the * elements of a first {@code IntStream} succeeded by all the elements of the * second {@code IntStream}. The resulting stream is ordered if both * of the input streams are ordered, and parallel if either of the input ! * streams is parallel. When the resulting stream is closed, the close ! * handlers for both input streams is invoked. * * @param a the first stream * @param b the second stream to concatenate on to end of the first stream * @return the concatenation of the two streams */
*** 816,826 **** Objects.requireNonNull(a); Objects.requireNonNull(b); Spliterator.OfInt split = new Streams.ConcatSpliterator.OfInt( a.spliterator(), b.spliterator()); ! return StreamSupport.intStream(split, a.isParallel() || b.isParallel()); } /** * A mutable builder for an {@code IntStream}. * --- 817,828 ---- Objects.requireNonNull(a); Objects.requireNonNull(b); Spliterator.OfInt split = new Streams.ConcatSpliterator.OfInt( a.spliterator(), b.spliterator()); ! IntStream stream = StreamSupport.intStream(split, a.isParallel() || b.isParallel()); ! return stream.onClose(Streams.composedClose(a, b)); } /** * A mutable builder for an {@code IntStream}. *