Class ObservableBufferBoundary.BufferBoundaryObserver<T,C extends Collection<? super T>,Open,Close>
java.lang.Object
java.lang.Number
java.util.concurrent.atomic.AtomicInteger
io.reactivex.rxjava3.internal.operators.observable.ObservableBufferBoundary.BufferBoundaryObserver<T,C,Open,Close>
- All Implemented Interfaces:
Observer<T>
,Disposable
,Serializable
- Enclosing class:
ObservableBufferBoundary<T,
U extends Collection<? super T>, Open, Close>
static final class ObservableBufferBoundary.BufferBoundaryObserver<T,C extends Collection<? super T>,Open,Close>
extends AtomicInteger
implements Observer<T>, Disposable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final Function
<? super Open, ? extends ObservableSource<? extends Close>> (package private) final ObservableSource
<? extends Open> (package private) boolean
(package private) boolean
(package private) final AtomicThrowable
(package private) long
(package private) final CompositeDisposable
(package private) final SpscLinkedArrayQueue
<C> private static final long
(package private) final AtomicReference
<Disposable> -
Constructor Summary
ConstructorsConstructorDescriptionBufferBoundaryObserver
(Observer<? super C> actual, ObservableSource<? extends Open> bufferOpen, Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose, Supplier<C> bufferSupplier) -
Method Summary
Modifier and TypeMethodDescription(package private) void
boundaryError
(Disposable observer, Throwable ex) (package private) void
close
(ObservableBufferBoundary.BufferCloseObserver<T, C> closer, long idx) void
dispose()
Dispose the resource, the operation should be idempotent.(package private) void
drain()
boolean
Returns true if this resource has been disposed.void
Notifies theObserver
that theObservable
has finished sending push-based notifications.void
Notifies theObserver
that theObservable
has experienced an error condition.void
Provides theObserver
with a new item to observe.void
Provides theObserver
with the means of cancelling (disposing) the connection (channel) with theObservable
in both synchronous (from withinObserver.onNext(Object)
) and asynchronous manner.(package private) void
(package private) void
Methods inherited from class java.util.concurrent.atomic.AtomicInteger
accumulateAndGet, addAndGet, compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, decrementAndGet, doubleValue, floatValue, get, getAcquire, getAndAccumulate, getAndAdd, getAndDecrement, getAndIncrement, getAndSet, getAndUpdate, getOpaque, getPlain, incrementAndGet, intValue, lazySet, longValue, set, setOpaque, setPlain, setRelease, toString, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatile
Methods inherited from class java.lang.Number
byteValue, shortValue
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
downstream
-
bufferSupplier
-
bufferOpen
-
bufferClose
-
observers
-
upstream
-
errors
-
done
volatile boolean done -
queue
-
cancelled
volatile boolean cancelled -
index
long index -
buffers
Map<Long,C extends Collection<? super T>> buffers
-
-
Constructor Details
-
BufferBoundaryObserver
BufferBoundaryObserver(Observer<? super C> actual, ObservableSource<? extends Open> bufferOpen, Function<? super Open, ? extends ObservableSource<? extends Close>> bufferClose, Supplier<C> bufferSupplier)
-
-
Method Details
-
onSubscribe
Description copied from interface:Observer
Provides theObserver
with the means of cancelling (disposing) the connection (channel) with theObservable
in both synchronous (from withinObserver.onNext(Object)
) and asynchronous manner.- Specified by:
onSubscribe
in interfaceObserver<T>
- Parameters:
d
- theDisposable
instance whoseDisposable.dispose()
can be called anytime to cancel the connection
-
onNext
Description copied from interface:Observer
Provides theObserver
with a new item to observe.The
Observable
may call this method 0 or more times.The
Observable
will not call this method again after it calls eitherObserver.onComplete()
orObserver.onError(java.lang.Throwable)
. -
onError
Description copied from interface:Observer
Notifies theObserver
that theObservable
has experienced an error condition.If the
Observable
calls this method, it will not thereafter callObserver.onNext(T)
orObserver.onComplete()
. -
onComplete
public void onComplete()Description copied from interface:Observer
Notifies theObserver
that theObservable
has finished sending push-based notifications.The
Observable
will not call this method if it callsObserver.onError(java.lang.Throwable)
.- Specified by:
onComplete
in interfaceObserver<T>
-
dispose
public void dispose()Description copied from interface:Disposable
Dispose the resource, the operation should be idempotent.- Specified by:
dispose
in interfaceDisposable
-
isDisposed
public boolean isDisposed()Description copied from interface:Disposable
Returns true if this resource has been disposed.- Specified by:
isDisposed
in interfaceDisposable
- Returns:
- true if this resource has been disposed
-
open
-
openComplete
-
close
-
boundaryError
-
drain
void drain()
-