public FilteredMultiFileSystemDiff(IMultiFileSystemDiff innerDiff, IMultiFileSystemChangeFilter filter) { if (innerDiff == null) throw new ArgumentNullException(nameof(innerDiff)); if (filter == null) throw new ArgumentNullException(nameof(filter)); m_InnerDiff = innerDiff; m_Filter = filter; }
IMultiFileSystemDiff GetDiff(IMultiFileSystemHistoryService historyService, ISyncPoint syncPoint, IMultiFileSystemChangeFilter filter) { var fromSnapshotId = syncPoint?.MultiFileSystemSnapshotId; var toSnapshotId = historyService.LatestSnapshot.Id; var diff = fromSnapshotId == null ? historyService.GetChanges(toSnapshotId) : historyService.GetChanges(fromSnapshotId, toSnapshotId); return new FilteredMultiFileSystemDiff(diff, filter); }