@@ -6943,79 +6943,6 @@ public final <B, U extends Collection<? super T>> Flowable<U> buffer(Publisher<B
6943
6943
return RxJavaPlugins.onAssembly(new FlowableBufferExactBoundary<T, U, B>(this, boundaryIndicator, bufferSupplier));
6944
6944
}
6945
6945
6946
- /**
6947
- * Returns a Flowable that emits buffers of items it collects from the source Publisher. The resulting
6948
- * Publisher emits connected, non-overlapping buffers. It emits the current buffer and replaces it with a
6949
- * new buffer whenever the Publisher produced by the specified {@code boundaryIndicatorSupplier} emits an item.
6950
- * <p>
6951
- * <img width="640" height="395" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/buffer1.png" alt="">
6952
- * <p>
6953
- * If either the source {@code Publisher} or the boundary {@code Publisher} issues an {@code onError} notification the event is passed on
6954
- * immediately without first emitting the buffer it is in the process of assembling.
6955
- * <dl>
6956
- * <dt><b>Backpressure:</b></dt>
6957
- * <dd>This operator does not support backpressure as it is instead controlled by the given Publishers and
6958
- * buffers data. It requests {@code Long.MAX_VALUE} upstream and does not obey downstream requests.</dd>
6959
- * <dt><b>Scheduler:</b></dt>
6960
- * <dd>This version of {@code buffer} does not operate by default on a particular {@link Scheduler}.</dd>
6961
- * </dl>
6962
- *
6963
- * @param <B> the value type of the boundary-providing Publisher
6964
- * @param boundaryIndicatorSupplier
6965
- * a {@link Supplier} that produces a Publisher that governs the boundary between buffers.
6966
- * Whenever the supplied {@code Publisher} emits an item, {@code buffer} emits the current buffer and
6967
- * begins to fill a new one
6968
- * @return a Flowable that emits a connected, non-overlapping buffer of items from the source Publisher
6969
- * each time the Publisher created with the {@code closingIndicator} argument emits an item
6970
- * @see <a href="http://reactivex.io/documentation/operators/buffer.html">ReactiveX operators documentation: Buffer</a>
6971
- */
6972
- @CheckReturnValue
6973
- @BackpressureSupport(BackpressureKind.ERROR)
6974
- @SchedulerSupport(SchedulerSupport.NONE)
6975
- public final <B> Flowable<List<T>> buffer(Supplier<? extends Publisher<B>> boundaryIndicatorSupplier) {
6976
- return buffer(boundaryIndicatorSupplier, ArrayListSupplier.<T>asSupplier());
6977
- }
6978
-
6979
- /**
6980
- * Returns a Flowable that emits buffers of items it collects from the source Publisher. The resulting
6981
- * Publisher emits connected, non-overlapping buffers. It emits the current buffer and replaces it with a
6982
- * new buffer whenever the Publisher produced by the specified {@code boundaryIndicatorSupplier} emits an item.
6983
- * <p>
6984
- * <img width="640" height="395" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/buffer1.png" alt="">
6985
- * <p>
6986
- * If either the source {@code Publisher} or the boundary {@code Publisher} issues an {@code onError} notification the event is passed on
6987
- * immediately without first emitting the buffer it is in the process of assembling.
6988
- * <dl>
6989
- * <dt><b>Backpressure:</b></dt>
6990
- * <dd>This operator does not support backpressure as it is instead controlled by the given Publishers and
6991
- * buffers data. It requests {@code Long.MAX_VALUE} upstream and does not obey downstream requests.</dd>
6992
- * <dt><b>Scheduler:</b></dt>
6993
- * <dd>This version of {@code buffer} does not operate by default on a particular {@link Scheduler}.</dd>
6994
- * </dl>
6995
- *
6996
- * @param <U> the collection subclass type to buffer into
6997
- * @param <B> the value type of the boundary-providing Publisher
6998
- * @param boundaryIndicatorSupplier
6999
- * a {@link Callable} that produces a Publisher that governs the boundary between buffers.
7000
- * Whenever the supplied {@code Publisher} emits an item, {@code buffer} emits the current buffer and
7001
- * begins to fill a new one
7002
- * @param bufferSupplier
7003
- * a factory function that returns an instance of the collection subclass to be used and returned
7004
- * as the buffer
7005
- * @return a Flowable that emits a connected, non-overlapping buffer of items from the source Publisher
7006
- * each time the Publisher created with the {@code closingIndicator} argument emits an item
7007
- * @see <a href="http://reactivex.io/documentation/operators/buffer.html">ReactiveX operators documentation: Buffer</a>
7008
- */
7009
- @CheckReturnValue
7010
- @BackpressureSupport(BackpressureKind.ERROR)
7011
- @SchedulerSupport(SchedulerSupport.NONE)
7012
- public final <B, U extends Collection<? super T>> Flowable<U> buffer(Supplier<? extends Publisher<B>> boundaryIndicatorSupplier,
7013
- Supplier<U> bufferSupplier) {
7014
- ObjectHelper.requireNonNull(boundaryIndicatorSupplier, "boundaryIndicatorSupplier is null");
7015
- ObjectHelper.requireNonNull(bufferSupplier, "bufferSupplier is null");
7016
- return RxJavaPlugins.onAssembly(new FlowableBufferBoundarySupplier<T, U, B>(this, boundaryIndicatorSupplier, bufferSupplier));
7017
- }
7018
-
7019
6946
/**
7020
6947
* Returns a Flowable that subscribes to this Publisher lazily, caches all of its events
7021
6948
* and replays them, in the same order as received, to all the downstream subscribers.
@@ -12186,7 +12113,7 @@ public final Flowable<T> onBackpressureLatest() {
12186
12113
@SchedulerSupport(SchedulerSupport.NONE)
12187
12114
public final Flowable<T> onErrorResumeNext(Function<? super Throwable, ? extends Publisher<? extends T>> resumeFunction) {
12188
12115
ObjectHelper.requireNonNull(resumeFunction, "resumeFunction is null");
12189
- return RxJavaPlugins.onAssembly(new FlowableOnErrorNext<T>(this, resumeFunction, false ));
12116
+ return RxJavaPlugins.onAssembly(new FlowableOnErrorNext<T>(this, resumeFunction));
12190
12117
}
12191
12118
12192
12119
/**
@@ -12313,53 +12240,6 @@ public final Flowable<T> onErrorReturnItem(final T item) {
12313
12240
return onErrorReturn(Functions.justFunction(item));
12314
12241
}
12315
12242
12316
- /**
12317
- * Instructs a Publisher to pass control to another Publisher rather than invoking
12318
- * {@link Subscriber#onError onError} if it encounters an {@link java.lang.Exception}.
12319
- * <p>
12320
- * This differs from {@link #onErrorResumeNext} in that this one does not handle {@link java.lang.Throwable}
12321
- * or {@link java.lang.Error} but lets those continue through.
12322
- * <p>
12323
- * <img width="640" height="310" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/onExceptionResumeNextViaPublisher.png" alt="">
12324
- * <p>
12325
- * By default, when a Publisher encounters an exception that prevents it from emitting the expected item
12326
- * to its {@link Subscriber}, the Publisher invokes its Subscriber's {@code onError} method, and then quits
12327
- * without invoking any more of its Subscriber's methods. The {@code onExceptionResumeNext} method changes
12328
- * this behavior. If you pass another Publisher ({@code resumeSequence}) to a Publisher's
12329
- * {@code onExceptionResumeNext} method, if the original Publisher encounters an exception, instead of
12330
- * invoking its Subscriber's {@code onError} method, it will instead relinquish control to
12331
- * {@code resumeSequence} which will invoke the Subscriber's {@link Subscriber#onNext onNext} method if it is
12332
- * able to do so. In such a case, because no Publisher necessarily invokes {@code onError}, the Subscriber
12333
- * may never know that an exception happened.
12334
- * <p>
12335
- * You can use this to prevent exceptions from propagating or to supply fallback data should exceptions be
12336
- * encountered.
12337
- * <dl>
12338
- * <dt><b>Backpressure:</b></dt>
12339
- * <dd>The operator honors backpressure from downstream. This and the resuming {@code Publisher}s
12340
- * are expected to honor backpressure as well.
12341
- * If any of them violate this expectation, the operator <em>may</em> throw an
12342
- * {@code IllegalStateException} when the source {@code Publisher} completes or
12343
- * {@code MissingBackpressureException} is signaled somewhere downstream.</dd>
12344
- * <dt><b>Scheduler:</b></dt>
12345
- * <dd>{@code onExceptionResumeNext} does not operate by default on a particular {@link Scheduler}.</dd>
12346
- * </dl>
12347
- *
12348
- * @param next
12349
- * the next Publisher that will take over if the source Publisher encounters
12350
- * an exception
12351
- * @return the original Publisher, with appropriately modified behavior
12352
- * @see <a href="http://reactivex.io/documentation/operators/catch.html">ReactiveX operators documentation: Catch</a>
12353
- */
12354
- @CheckReturnValue
12355
- @NonNull
12356
- @BackpressureSupport(BackpressureKind.FULL)
12357
- @SchedulerSupport(SchedulerSupport.NONE)
12358
- public final Flowable<T> onExceptionResumeNext(final Publisher<? extends T> next) {
12359
- ObjectHelper.requireNonNull(next, "next is null");
12360
- return RxJavaPlugins.onAssembly(new FlowableOnErrorNext<T>(this, Functions.justFunction(next), true));
12361
- }
12362
-
12363
12243
/**
12364
12244
* Nulls out references to the upstream producer and downstream Subscriber if
12365
12245
* the sequence is terminated or downstream cancels.
@@ -18290,77 +18170,6 @@ public final <U, V> Flowable<Flowable<T>> window(
18290
18170
return RxJavaPlugins.onAssembly(new FlowableWindowBoundarySelector<T, U, V>(this, openingIndicator, closingIndicator, bufferSize));
18291
18171
}
18292
18172
18293
- /**
18294
- * Returns a Flowable that emits windows of items it collects from the source Publisher. The resulting
18295
- * Publisher emits connected, non-overlapping windows. It emits the current window and opens a new one
18296
- * whenever the Publisher produced by the specified {@code closingSelector} emits an item.
18297
- * <p>
18298
- * <img width="640" height="455" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/window1.png" alt="">
18299
- * <dl>
18300
- * <dt><b>Backpressure:</b></dt>
18301
- * <dd>The operator consumes the source {@code Publisher} in an unbounded manner.
18302
- * The returned {@code Publisher} doesn't support backpressure as it uses
18303
- * the {@code closingSelector} to control the creation of windows. The returned inner {@code Publisher}s honor
18304
- * backpressure but have an unbounded inner buffer that <em>may</em> lead to {@code OutOfMemoryError}
18305
- * if left unconsumed.</dd>
18306
- * <dt><b>Scheduler:</b></dt>
18307
- * <dd>This version of {@code window} does not operate by default on a particular {@link Scheduler}.</dd>
18308
- * </dl>
18309
- *
18310
- * @param <B> the element type of the boundary Publisher
18311
- * @param boundaryIndicatorSupplier
18312
- * a {@link Supplier} that returns a {@code Publisher} that governs the boundary between windows.
18313
- * When the source {@code Publisher} emits an item, {@code window} emits the current window and begins
18314
- * a new one.
18315
- * @return a Flowable that emits connected, non-overlapping windows of items from the source Publisher
18316
- * whenever {@code closingSelector} emits an item
18317
- * @see <a href="http://reactivex.io/documentation/operators/window.html">ReactiveX operators documentation: Window</a>
18318
- */
18319
- @CheckReturnValue
18320
- @BackpressureSupport(BackpressureKind.ERROR)
18321
- @SchedulerSupport(SchedulerSupport.NONE)
18322
- public final <B> Flowable<Flowable<T>> window(Supplier<? extends Publisher<B>> boundaryIndicatorSupplier) {
18323
- return window(boundaryIndicatorSupplier, bufferSize());
18324
- }
18325
-
18326
- /**
18327
- * Returns a Flowable that emits windows of items it collects from the source Publisher. The resulting
18328
- * Publisher emits connected, non-overlapping windows. It emits the current window and opens a new one
18329
- * whenever the Publisher produced by the specified {@code closingSelector} emits an item.
18330
- * <p>
18331
- * <img width="640" height="455" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/window1.png" alt="">
18332
- * <dl>
18333
- * <dt><b>Backpressure:</b></dt>
18334
- * <dd>The operator consumes the source {@code Publisher} in an unbounded manner.
18335
- * The returned {@code Publisher} doesn't support backpressure as it uses
18336
- * the {@code closingSelector} to control the creation of windows. The returned inner {@code Publisher}s honor
18337
- * backpressure but have an unbounded inner buffer that <em>may</em> lead to {@code OutOfMemoryError}
18338
- * if left unconsumed.</dd>
18339
- * <dt><b>Scheduler:</b></dt>
18340
- * <dd>This version of {@code window} does not operate by default on a particular {@link Scheduler}.</dd>
18341
- * </dl>
18342
- *
18343
- * @param <B> the element type of the boundary Publisher
18344
- * @param boundaryIndicatorSupplier
18345
- * a {@link Supplier} that returns a {@code Publisher} that governs the boundary between windows.
18346
- * When the source {@code Publisher} emits an item, {@code window} emits the current window and begins
18347
- * a new one.
18348
- * @param bufferSize
18349
- * the capacity hint for the buffer in the inner windows
18350
- * @return a Flowable that emits connected, non-overlapping windows of items from the source Publisher
18351
- * whenever {@code closingSelector} emits an item
18352
- * @see <a href="http://reactivex.io/documentation/operators/window.html">ReactiveX operators documentation: Window</a>
18353
- */
18354
- @CheckReturnValue
18355
- @NonNull
18356
- @BackpressureSupport(BackpressureKind.ERROR)
18357
- @SchedulerSupport(SchedulerSupport.NONE)
18358
- public final <B> Flowable<Flowable<T>> window(Supplier<? extends Publisher<B>> boundaryIndicatorSupplier, int bufferSize) {
18359
- ObjectHelper.requireNonNull(boundaryIndicatorSupplier, "boundaryIndicatorSupplier is null");
18360
- ObjectHelper.verifyPositive(bufferSize, "bufferSize");
18361
- return RxJavaPlugins.onAssembly(new FlowableWindowBoundarySupplier<T, B>(this, boundaryIndicatorSupplier, bufferSize));
18362
- }
18363
-
18364
18173
/**
18365
18174
* Merges the specified Publisher into this Publisher sequence by using the {@code resultSelector}
18366
18175
* function only when the source Publisher (this instance) emits an item.
0 commit comments