public IEnumerable <IWorkItem> GetItems(QueryFilter filter = null, bool recycle = true) { foreach (ISourceClass sourceClass in GeodatabaseBySourceClasses.Keys) { int count = 0; Stopwatch watch = _msg.DebugStartTiming(); foreach (Row row in GetRowsCore(sourceClass, filter, recycle)) { IWorkItem item = CreateWorkItemCore(row, sourceClass); count += 1; yield return(WorkItemStateRepository.Refresh(item)); } _msg.DebugStopTiming(watch, $"{nameof(GetItems)}() {sourceClass.Name}: {count} items"); } // return GeodatabaseBySourceClasses.Keys.SelectMany(sourceClass => GetItemsCore(sourceClass, filter, recycle)); }
protected override async Task SetStatusCoreAsync(IWorkItem item, ISourceClass source) { await Task.Run(() => WorkItemStateRepository.Update(item)); }
protected IWorkItem RefreshState(IWorkItem item) { return(WorkItemStateRepository.Refresh(item)); }
public void Discard() { WorkItemStateRepository.Discard(); }
public void Commit() { WorkItemStateRepository.Commit(); }
// todo daro: rename? public void UpdateVolatileState(IEnumerable <IWorkItem> items) { WorkItemStateRepository.UpdateVolatileState(items); }
public void SetVisited(IWorkItem item) { WorkItemStateRepository.Update(item); }