public MarkWorkspacesAsInaccessibleParams( IEnumerable <IThreadSafeWorkspace> Workspaces, IFetchObservables FetchObservables) { this.Workspaces = Workspaces; this.FetchObservables = FetchObservables; }
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetSingle <TInterface>() .SingleAsync() .SelectMany(entity => entity == null ? Observable.Return(Unit.Default) : dataSource.UpdateWithConflictResolution(convertToThreadsafeEntity(entity)).Select(_ => Unit.Default)) .Select(_ => FinishedPersisting.Transition(fetch));
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <TInterface>() .SingleAsync() .Select(toThreadsafeList) .SelectMany(dataSource.BatchUpdate) .Select(_ => FinishedPersisting.Transition(fetch)) .OnErrorReturnResult(ErrorOccured);
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <ITimeEntry>() .SingleAsync() .SelectMany(Identity) .Distinct(timeEntry => timeEntry.ProjectId) .WhereAsync(hasUnknownProject) .SelectMany(createProjectPlaceholder) .Count() .Track(analyticsService.ProjectPlaceholdersCreated) .SelectValue(Done.Transition(fetch));
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <ITimeEntry>() .SingleAsync() .SelectMany(Identity) .Distinct(timeEntry => timeEntry.ProjectId) .WhereAsync(needsGhostProject) .SelectMany(createGhostProject) .Count() .Track(analyticsService.ProjectGhostsCreated) .Select(FinishedPersisting.Transition(fetch));
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <T>() .Do(maybeUpdateSinceDates) .SelectValue(Done.Transition(fetch));
public IObservable <ITransition> Start(IFetchObservables fetch) => getProjectsWhichNeedsRefetching() .SelectMany(projects => projects == null ? Observable.Return(FinishedPersisting.Transition(fetch)) : refetch(projects).Select(FetchNext.Transition(fetch))) .OnErrorReturnResult(ErrorOccured);
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <TInterface>() .SingleAsync() .Select(toThreadsafeList) .SelectMany(dataSource.BatchUpdate) .Select(_ => Done.Transition(fetch));
protected abstract IObservable <T> FetchObservable(IFetchObservables fetch);
public IObservable <ITransition> Start(IFetchObservables fetchObservables) => FetchObservable(fetchObservables) .SingleAsync() .Select(_ => Done.Transition(fetchObservables)) .OnErrorReturnResult(ErrorOccured);
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <TInterface>() .Do(maybeUpdateSinceDates) .Select(Finished.Transition(fetch));
protected override IObservable <T> FetchObservable(IFetchObservables fetch) => fetch.GetSingle <T>();
public IObservable <ITransition> Start(IFetchObservables fetch) => internalState.Start(fetch) .SelectMany(_ => fetch.GetList <TInterface>() .Do(maybeUpdateSinceDates) .Select(__ => FinishedPersisting.Transition(fetch)));
private IObservable <ITransition> handlePresenceOfWorkspaces(IFetchObservables fetch) => internalState.Start(fetch) .Select(FinishedPersisting.Transition(fetch));
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <IWorkspace>() .SelectMany(workspaces => workspaces.Any() ? handlePresenceOfWorkspaces(fetch) : Observable.Throw <ITransition>(new NoWorkspaceException()));
protected override IObservable <IList <T> > FetchObservable(IFetchObservables fetch) => fetch.GetList <T>();
public IObservable <ITransition> Start(IFetchObservables fetch) => UnsafeState.Start(fetch) .Catch((Exception exception) => processError(exception));
public IObservable <ITransition> Start(IFetchObservables fetch) => fetch.GetList <ITimeEntry>() .SingleAsync() .SelectMany(Identity) .WhereAsync(hasUnknownDependency) .SelectMany(timeEntry =>