@Override public void onCompleted() { if (state.active) { Object last = lastValue; if (last == null) { last = nl.completed(); } for (SubjectObserver<T> bo : state.terminate(last)) { if (last == nl.completed()) { bo.onCompleted(); } else { bo.onNext(nl.getValue(last)); bo.onCompleted(); } } } }
@Override public void onNext(T t) { if (ssm.active) { state.next(t); for (SubjectSubscriptionManager.SubjectObserver<? super T> o : ssm.observers()) { if (caughtUp(o)) { o.onNext(t); } } } }
@Override public void onNext(T v) { for (SubjectObserver<T> bo : state.observers()) { bo.onNext(v); } } }