public IObservable <IEvent> Assign(Command.Assign assignment, IScheduler scheduler) { if (assignment.Offset.HasValue) { return(Observable .Start(() => _consumer.Assign(new TopicPartitionOffset(assignment.Topic, assignment.Offset.Value)), scheduler) .SelectMany(_ => Observable.Empty <IEvent>())); } else { return(Observable .Start(() => _consumer.Assign(assignment.Topic), scheduler) .SelectMany(_ => Observable.Empty <IEvent>())); } }
private Func <IAdapter <TKey, TValue>, IObservable <IEvent> > Apply(Command.Assign assignment) { return(adapter => adapter.Assign(assignment, _scheduler)); }