internal void RemoveSnapshots(IEnumerable <string> urls) { foreach (string url in urls) { TableEntriesSnapshot existing = _snapshots.FirstOrDefault(s => s.Url == url); if (existing != null) { _snapshots.Remove(existing); _sink.RemoveSnapshot(existing); } } }
public void AddErrors(AccessibilityResult result) { if (result == null || !result.Violations.Any()) { return; } result.Violations = result.Violations.Where(v => !_snapshots.Any(s => s.Value.Errors.Contains(v))); var snapshot = new TableEntriesSnapshot(result); _snapshots[result.Url] = snapshot; UpdateAllSinks(); }
internal void UpdateSink(IEnumerable <TableEntriesSnapshot> snapshots) { foreach (TableEntriesSnapshot snapshot in snapshots) { TableEntriesSnapshot existing = _snapshots.FirstOrDefault(s => s.Url == snapshot.Url); if (existing != null) { _snapshots.Remove(existing); _sink.ReplaceSnapshot(existing, snapshot); } else { _sink.AddSnapshot(snapshot); } _snapshots.Add(snapshot); } }
public void CleanAllErrors() { foreach (string url in _snapshots.Keys) { TableEntriesSnapshot snapshot = _snapshots[url]; if (snapshot != null) { snapshot.Dispose(); } } _snapshots.Clear(); lock (_managers) { foreach (SinkManager manager in _managers) { manager.Clear(); } } UpdateAllSinks(); }