private IObservable <OutputMessage> EnqueueAction(IRepositoryAction resetAction) { this.queueAlterations.OnNext(new QueueAlteration { Kind = QueueAlterationKind.Append, Target = resetAction }); return(resetAction.DeferredOutput); }
public IObservable <IRepositoryActionEntry> EnqueueAction(IRepositoryAction resetAction, bool skipDuplicateCheck) { try { this.queueAlterations.OnNext(new QueueAlteration { Kind = skipDuplicateCheck ? QueueAlterationKind.AppendNoDuplicateCheck : QueueAlterationKind.Append, Target = resetAction }); } catch { // Eat errors when queueAlterations is completed. } return(resetAction.ProcessStream); }
public string Get([FromServices] IRepositoryAction action) => action.Execute();