public void Subscribe(ISubscriber <R> s) { if (PublisherCallableXMap <T, R> .CallableXMap(source, s, mapper)) { return; } source.Subscribe(new SwitchMapSubscriber(s, mapper, prefetch)); }
public void Subscribe(ISubscriber <R> s) { if (PublisherCallableXMap <T, R> .CallableXMap(source, s, mapper)) { return; } source.Subscribe(new FlatMapSubscriber(s, mapper, delayErrors, maxConcurrency, prefetch)); }
public void Subscribe(ISubscriber <R> s) { if (PublisherCallableXMap <T, R> .CallableXMap(source, s, mapper)) { return; } if (errorMode == ConcatErrorMode.Immediate) { if (s is IConditionalSubscriber <R> ) { source.Subscribe(new ConcatImmediateConditionalSubscriber((IConditionalSubscriber <R>)s, mapper, prefetch)); } else { source.Subscribe(new ConcatImmediateSubscriber(s, mapper, prefetch)); } } else if (errorMode == ConcatErrorMode.Boundary) { if (s is IConditionalSubscriber <R> ) { source.Subscribe(new ConcatBoundaryConditionalSubscriber((IConditionalSubscriber <R>)s, mapper, prefetch)); } else { source.Subscribe(new ConcatBoundarySubscriber(s, mapper, prefetch)); } } else { if (s is IConditionalSubscriber <R> ) { source.Subscribe(new ConcatEndConditionalSubscriber((IConditionalSubscriber <R>)s, mapper, prefetch)); } else { source.Subscribe(new ConcatEndSubscriber(s, mapper, prefetch)); } } }