@Override public void dispose() { if (!cancelled) { cancelled = true; state.remove(this); } }
@Override public void dispose() { if (!cancelled) { cancelled = true; state.remove(this); } }
@Override protected void subscribeActual(Observer<? super T> observer) { ReplayDisposable<T> rs = new ReplayDisposable<T>(observer, this); observer.onSubscribe(rs); if (!rs.cancelled) { if (add(rs)) { if (rs.cancelled) { remove(rs); return; } } buffer.replay(rs); } }
@Override protected void subscribeActual(Observer<? super T> observer) { ReplayDisposable<T> rs = new ReplayDisposable<T>(observer, this); observer.onSubscribe(rs); if (!rs.cancelled) { if (add(rs)) { if (rs.cancelled) { remove(rs); return; } } buffer.replay(rs); } }