public void AddIncrementalRestorePoint() { if (_points.Count == 0) { throw new Exception("You need to add FullRestorePoint first."); } var addFiles = new LinkedList <FileInfo>(); var fakePoint = new RestorePoint(PointType.Incremental, _files); var latestPoint = _points.Last; foreach (var file1 in latestPoint.Value.Files) { foreach (var file2 in fakePoint.Files) { if (file2.Value.Name != file1.Value.Name || file1.Key == file2.Key) { continue; } var exists = addFiles.Any(u => u.Name == file1.Value.Name); if (exists == false) { addFiles.AddLast(file1.Value); } } } var newRestorePoint = new RestorePoint(PointType.Incremental, addFiles); _points.AddLast(newRestorePoint); }
public SaveSeparate(RestorePoint data) { this._data = data; }
private static long GetSizeOfPoint(RestorePoint point) { return(point.Files.Sum(file => file.Value.Length)); }
public void AddFullRestorePoint() { var point = new RestorePoint(PointType.Full, _files); _points.AddLast(point); }
public SaveGeneral(RestorePoint data) { this._data = data; }