Refactor last PR

This commit is contained in:
Tyrrrz
2020-12-17 17:49:35 +02:00
parent 69acb5bf76
commit 3861dba60c
3 changed files with 35 additions and 30 deletions

View File

@@ -1,27 +0,0 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net.Http;
using System.Threading.Tasks;
namespace DiscordChatExporter.Domain.Internal.Extensions
{
internal static class HttpClientExtensions
{
public static async ValueTask DownloadAsync(this HttpClient httpClient, string uri, string outputFilePath)
{
using var response = await httpClient.GetAsync(uri);
var output = File.Create(outputFilePath);
await response.Content.CopyToAsync(output);
IEnumerable<string> lastModifiedHeaderValues;
if (response.Content.Headers.TryGetValues("Last-Modified", out lastModifiedHeaderValues))
{
await output.DisposeAsync();
File.SetLastWriteTime(outputFilePath, DateTime.Parse(lastModifiedHeaderValues.First()));
}
}
}
}

View File

@@ -0,0 +1,12 @@
using System.Net.Http.Headers;
namespace DiscordChatExporter.Domain.Internal.Extensions
{
internal static class HttpExtensions
{
public static string? TryGetValue(this HttpContentHeaders headers, string name) =>
headers.TryGetValues(name, out var values)
? string.Concat(values)
: null;
}
}