From ebc9782eb5622b6149834d616b7c6954d4887b5d Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Fri, 26 Oct 2018 11:01:08 -0500 Subject: [PATCH] begin caching original file snapshots ref #464 --- src/FilterLists.Services/Snapshot/Snapshot.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/FilterLists.Services/Snapshot/Snapshot.cs b/src/FilterLists.Services/Snapshot/Snapshot.cs index d2638407c..7a471bea3 100644 --- a/src/FilterLists.Services/Snapshot/Snapshot.cs +++ b/src/FilterLists.Services/Snapshot/Snapshot.cs @@ -211,6 +211,19 @@ private async Task GetLinesFromStream(Stream stream) string line; while ((line = await streamReader.ReadLineAsync()) != null) lines.AddIfNotNullOrEmpty(line.Trim()); + stream.Position = 0; + await SaveOriginalFile(stream); + } + } + + private async Task SaveOriginalFile(Stream stream) + { + var fileName = Path.Combine("snapshots", List.Id.ToString(), + BitConverter.ToString(SnapEntity.Md5Checksum).Replace("-", "") + ".txt"); + new FileInfo(fileName).Directory?.Create(); + using (var fileStream = File.Create(fileName)) + { + await stream.CopyToAsync(fileStream); } }