Package io.reactivex.rxjava3.subjects
Class ReplaySubject.UnboundedReplayBuffer<T>
- java.lang.Object
-
- java.util.concurrent.atomic.AtomicReference<java.lang.Object>
-
- io.reactivex.rxjava3.subjects.ReplaySubject.UnboundedReplayBuffer<T>
-
- All Implemented Interfaces:
ReplaySubject.ReplayBuffer<T>
,java.io.Serializable
- Enclosing class:
- ReplaySubject<T>
static final class ReplaySubject.UnboundedReplayBuffer<T> extends java.util.concurrent.atomic.AtomicReference<java.lang.Object> implements ReplaySubject.ReplayBuffer<T>
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.util.List<java.lang.Object>
buffer
(package private) boolean
done
private static long
serialVersionUID
(package private) int
size
-
Constructor Summary
Constructors Constructor Description UnboundedReplayBuffer(int capacityHint)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(T value)
void
addFinal(java.lang.Object notificationLite)
T
getValue()
T[]
getValues(T[] array)
void
replay(ReplaySubject.ReplayDisposable<T> rs)
int
size()
void
trimHead()
Make sure an old inaccessible head value is released in a bounded buffer.-
Methods inherited from class java.util.concurrent.atomic.AtomicReference
accumulateAndGet, compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, get, getAcquire, getAndAccumulate, getAndSet, getAndUpdate, getOpaque, getPlain, lazySet, set, setOpaque, setPlain, setRelease, toString, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatile
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.reactivex.rxjava3.subjects.ReplaySubject.ReplayBuffer
compareAndSet, get
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
buffer
final java.util.List<java.lang.Object> buffer
-
done
volatile boolean done
-
size
volatile int size
-
-
Method Detail
-
add
public void add(T value)
- Specified by:
add
in interfaceReplaySubject.ReplayBuffer<T>
-
addFinal
public void addFinal(java.lang.Object notificationLite)
- Specified by:
addFinal
in interfaceReplaySubject.ReplayBuffer<T>
-
trimHead
public void trimHead()
Description copied from interface:ReplaySubject.ReplayBuffer
Make sure an old inaccessible head value is released in a bounded buffer.- Specified by:
trimHead
in interfaceReplaySubject.ReplayBuffer<T>
-
getValue
@Nullable public T getValue()
- Specified by:
getValue
in interfaceReplaySubject.ReplayBuffer<T>
-
getValues
public T[] getValues(T[] array)
- Specified by:
getValues
in interfaceReplaySubject.ReplayBuffer<T>
-
replay
public void replay(ReplaySubject.ReplayDisposable<T> rs)
- Specified by:
replay
in interfaceReplaySubject.ReplayBuffer<T>
-
size
public int size()
- Specified by:
size
in interfaceReplaySubject.ReplayBuffer<T>
-
-