Class ObservableGroupJoin.GroupJoinDisposable<TLeft,TRight,TLeftEnd,TRightEnd,R>
- java.lang.Object
-
- java.lang.Number
-
- java.util.concurrent.atomic.AtomicInteger
-
- io.reactivex.rxjava3.internal.operators.observable.ObservableGroupJoin.GroupJoinDisposable<TLeft,TRight,TLeftEnd,TRightEnd,R>
-
- All Implemented Interfaces:
Disposable
,ObservableGroupJoin.JoinSupport
,java.io.Serializable
static final class ObservableGroupJoin.GroupJoinDisposable<TLeft,TRight,TLeftEnd,TRightEnd,R> extends java.util.concurrent.atomic.AtomicInteger implements Disposable, ObservableGroupJoin.JoinSupport
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.concurrent.atomic.AtomicInteger
active
(package private) boolean
cancelled
(package private) CompositeDisposable
disposables
(package private) Observer<? super R>
downstream
(package private) java.util.concurrent.atomic.AtomicReference<java.lang.Throwable>
error
(package private) static java.lang.Integer
LEFT_CLOSE
(package private) static java.lang.Integer
LEFT_VALUE
(package private) Function<? super TLeft,? extends ObservableSource<TLeftEnd>>
leftEnd
(package private) int
leftIndex
(package private) java.util.Map<java.lang.Integer,UnicastSubject<TRight>>
lefts
(package private) SpscLinkedArrayQueue<java.lang.Object>
queue
(package private) BiFunction<? super TLeft,? super Observable<TRight>,? extends R>
resultSelector
(package private) static java.lang.Integer
RIGHT_CLOSE
(package private) static java.lang.Integer
RIGHT_VALUE
(package private) Function<? super TRight,? extends ObservableSource<TRightEnd>>
rightEnd
(package private) int
rightIndex
(package private) java.util.Map<java.lang.Integer,TRight>
rights
private static long
serialVersionUID
-
Constructor Summary
Constructors Constructor Description GroupJoinDisposable(Observer<? super R> actual, Function<? super TLeft,? extends ObservableSource<TLeftEnd>> leftEnd, Function<? super TRight,? extends ObservableSource<TRightEnd>> rightEnd, BiFunction<? super TLeft,? super Observable<TRight>,? extends R> resultSelector)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
cancelAll()
void
dispose()
Dispose the resource, the operation should be idempotent.(package private) void
drain()
(package private) void
errorAll(Observer<?> a)
(package private) void
fail(java.lang.Throwable exc, Observer<?> a, SpscLinkedArrayQueue<?> q)
void
innerClose(boolean isLeft, ObservableGroupJoin.LeftRightEndObserver index)
void
innerCloseError(java.lang.Throwable ex)
void
innerComplete(ObservableGroupJoin.LeftRightObserver sender)
void
innerError(java.lang.Throwable ex)
void
innerValue(boolean isLeft, java.lang.Object o)
boolean
isDisposed()
Returns true if this resource has been disposed.-
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
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
queue
final SpscLinkedArrayQueue<java.lang.Object> queue
-
disposables
final CompositeDisposable disposables
-
lefts
final java.util.Map<java.lang.Integer,UnicastSubject<TRight>> lefts
-
rights
final java.util.Map<java.lang.Integer,TRight> rights
-
error
final java.util.concurrent.atomic.AtomicReference<java.lang.Throwable> error
-
leftEnd
final Function<? super TLeft,? extends ObservableSource<TLeftEnd>> leftEnd
-
rightEnd
final Function<? super TRight,? extends ObservableSource<TRightEnd>> rightEnd
-
resultSelector
final BiFunction<? super TLeft,? super Observable<TRight>,? extends R> resultSelector
-
active
final java.util.concurrent.atomic.AtomicInteger active
-
leftIndex
int leftIndex
-
rightIndex
int rightIndex
-
cancelled
volatile boolean cancelled
-
LEFT_VALUE
static final java.lang.Integer LEFT_VALUE
-
RIGHT_VALUE
static final java.lang.Integer RIGHT_VALUE
-
LEFT_CLOSE
static final java.lang.Integer LEFT_CLOSE
-
RIGHT_CLOSE
static final java.lang.Integer RIGHT_CLOSE
-
-
Constructor Detail
-
GroupJoinDisposable
GroupJoinDisposable(Observer<? super R> actual, Function<? super TLeft,? extends ObservableSource<TLeftEnd>> leftEnd, Function<? super TRight,? extends ObservableSource<TRightEnd>> rightEnd, BiFunction<? super TLeft,? super Observable<TRight>,? extends R> resultSelector)
-
-
Method Detail
-
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
-
cancelAll
void cancelAll()
-
errorAll
void errorAll(Observer<?> a)
-
fail
void fail(java.lang.Throwable exc, Observer<?> a, SpscLinkedArrayQueue<?> q)
-
drain
void drain()
-
innerError
public void innerError(java.lang.Throwable ex)
- Specified by:
innerError
in interfaceObservableGroupJoin.JoinSupport
-
innerComplete
public void innerComplete(ObservableGroupJoin.LeftRightObserver sender)
- Specified by:
innerComplete
in interfaceObservableGroupJoin.JoinSupport
-
innerValue
public void innerValue(boolean isLeft, java.lang.Object o)
- Specified by:
innerValue
in interfaceObservableGroupJoin.JoinSupport
-
innerClose
public void innerClose(boolean isLeft, ObservableGroupJoin.LeftRightEndObserver index)
- Specified by:
innerClose
in interfaceObservableGroupJoin.JoinSupport
-
innerCloseError
public void innerCloseError(java.lang.Throwable ex)
- Specified by:
innerCloseError
in interfaceObservableGroupJoin.JoinSupport
-
-