From d72fe594b4d7223d5860e8658635e8786541c0e3 Mon Sep 17 00:00:00 2001 From: Tyrrrz Date: Sun, 29 Nov 2020 00:17:58 +0200 Subject: [PATCH] Use JsonExtensions package --- .../Discord/DiscordClient.cs | 6 ++-- .../Discord/Models/Attachment.cs | 1 + .../Discord/Models/Channel.cs | 2 +- .../Discord/Models/Embed.cs | 1 + .../Discord/Models/EmbedAuthor.cs | 2 +- .../Discord/Models/EmbedField.cs | 2 +- .../Discord/Models/EmbedFooter.cs | 2 +- .../Discord/Models/EmbedImage.cs | 2 +- .../Discord/Models/Emoji.cs | 2 +- .../Discord/Models/Member.cs | 1 + .../Discord/Models/Message.cs | 1 + .../Discord/Models/Role.cs | 1 + .../Discord/Models/User.cs | 1 + .../DiscordChatExporter.Domain.csproj | 1 + .../Exporting/Writers/JsonMessageWriter.cs | 2 +- .../Extensions/HttpClientExtensions.cs | 9 ------ .../Extensions/JsonElementExtensions.cs | 12 -------- .../Extensions/Utf8JsonWriterExtensions.cs | 28 ------------------- 18 files changed, 18 insertions(+), 58 deletions(-) delete mode 100644 DiscordChatExporter.Domain/Internal/Extensions/JsonElementExtensions.cs delete mode 100644 DiscordChatExporter.Domain/Internal/Extensions/Utf8JsonWriterExtensions.cs diff --git a/DiscordChatExporter.Domain/Discord/DiscordClient.cs b/DiscordChatExporter.Domain/Discord/DiscordClient.cs index 5484a6e3..19f9e69d 100644 --- a/DiscordChatExporter.Domain/Discord/DiscordClient.cs +++ b/DiscordChatExporter.Domain/Discord/DiscordClient.cs @@ -9,6 +9,8 @@ using DiscordChatExporter.Domain.Discord.Models; using DiscordChatExporter.Domain.Exceptions; using DiscordChatExporter.Domain.Internal; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Http; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord { @@ -52,7 +54,7 @@ namespace DiscordChatExporter.Domain.Discord }; } - return await response.Content.ReadAsJsonAsync(); + return await response.Content.ReadAsJsonAsync(default); } private async ValueTask TryGetJsonResponseAsync(string url) @@ -60,7 +62,7 @@ namespace DiscordChatExporter.Domain.Discord using var response = await GetResponseAsync(url); return response.IsSuccessStatusCode - ? await response.Content.ReadAsJsonAsync() + ? await response.Content.ReadAsJsonAsync(default) : (JsonElement?) null; } diff --git a/DiscordChatExporter.Domain/Discord/Models/Attachment.cs b/DiscordChatExporter.Domain/Discord/Models/Attachment.cs index 4c9d2679..7f882fa5 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Attachment.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Attachment.cs @@ -4,6 +4,7 @@ using System.IO; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Channel.cs b/DiscordChatExporter.Domain/Discord/Models/Channel.cs index d670c5de..01d87089 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Channel.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Channel.cs @@ -1,7 +1,7 @@ using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; using Tyrrrz.Extensions; namespace DiscordChatExporter.Domain.Discord.Models diff --git a/DiscordChatExporter.Domain/Discord/Models/Embed.cs b/DiscordChatExporter.Domain/Discord/Models/Embed.cs index 147db273..635d6624 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Embed.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Embed.cs @@ -4,6 +4,7 @@ using System.Drawing; using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs index c667bf3e..e18b0315 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedAuthor.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs index e6d498e1..bb07a1fa 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedField.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs index 2f6c92ae..5a729d0a 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedFooter.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs b/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs index 7cf744d3..b89e154b 100644 --- a/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs +++ b/DiscordChatExporter.Domain/Discord/Models/EmbedImage.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Emoji.cs b/DiscordChatExporter.Domain/Discord/Models/Emoji.cs index c43c8e2f..976ba36c 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Emoji.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Emoji.cs @@ -2,7 +2,7 @@ using System.Linq; using System.Text; using System.Text.Json; -using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; using Tyrrrz.Extensions; namespace DiscordChatExporter.Domain.Discord.Models diff --git a/DiscordChatExporter.Domain/Discord/Models/Member.cs b/DiscordChatExporter.Domain/Discord/Models/Member.cs index 67c054d1..fbd6a586 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Member.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Member.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Message.cs b/DiscordChatExporter.Domain/Discord/Models/Message.cs index 7c9c0455..b30f67b3 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Message.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Message.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/Role.cs b/DiscordChatExporter.Domain/Discord/Models/Role.cs index 39e35ba2..b7a6a739 100644 --- a/DiscordChatExporter.Domain/Discord/Models/Role.cs +++ b/DiscordChatExporter.Domain/Discord/Models/Role.cs @@ -1,6 +1,7 @@ using System.Drawing; using System.Text.Json; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/Discord/Models/User.cs b/DiscordChatExporter.Domain/Discord/Models/User.cs index fed11d3f..1bc189c4 100644 --- a/DiscordChatExporter.Domain/Discord/Models/User.cs +++ b/DiscordChatExporter.Domain/Discord/Models/User.cs @@ -2,6 +2,7 @@ using System.Text.Json; using DiscordChatExporter.Domain.Discord.Models.Common; using DiscordChatExporter.Domain.Internal.Extensions; +using JsonExtensions.Reading; namespace DiscordChatExporter.Domain.Discord.Models { diff --git a/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj b/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj index 406418d8..21cbedd8 100644 --- a/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj +++ b/DiscordChatExporter.Domain/DiscordChatExporter.Domain.csproj @@ -2,6 +2,7 @@ + diff --git a/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs b/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs index 6e61180c..2b92732b 100644 --- a/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs +++ b/DiscordChatExporter.Domain/Exporting/Writers/JsonMessageWriter.cs @@ -4,7 +4,7 @@ using System.Threading.Tasks; using DiscordChatExporter.Domain.Discord.Models; using DiscordChatExporter.Domain.Exporting.Writers.MarkdownVisitors; using DiscordChatExporter.Domain.Internal.Extensions; -using DiscordChatExporter.Domain.Markdown.Ast; +using JsonExtensions.Writing; namespace DiscordChatExporter.Domain.Exporting.Writers { diff --git a/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs b/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs index 3c88633a..789fd007 100644 --- a/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs +++ b/DiscordChatExporter.Domain/Internal/Extensions/HttpClientExtensions.cs @@ -1,6 +1,5 @@ using System.IO; using System.Net.Http; -using System.Text.Json; using System.Threading.Tasks; namespace DiscordChatExporter.Domain.Internal.Extensions @@ -15,13 +14,5 @@ namespace DiscordChatExporter.Domain.Internal.Extensions await input.CopyToAsync(output); await output.DisposeAsync(); } - - public static async ValueTask ReadAsJsonAsync(this HttpContent content) - { - await using var stream = await content.ReadAsStreamAsync(); - using var doc = await JsonDocument.ParseAsync(stream); - - return doc.RootElement.Clone(); - } } } \ No newline at end of file diff --git a/DiscordChatExporter.Domain/Internal/Extensions/JsonElementExtensions.cs b/DiscordChatExporter.Domain/Internal/Extensions/JsonElementExtensions.cs deleted file mode 100644 index 304c8c34..00000000 --- a/DiscordChatExporter.Domain/Internal/Extensions/JsonElementExtensions.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Text.Json; - -namespace DiscordChatExporter.Domain.Internal.Extensions -{ - internal static class JsonElementExtensions - { - public static JsonElement? GetPropertyOrNull(this JsonElement element, string propertyName) => - element.TryGetProperty(propertyName, out var result) && result.ValueKind != JsonValueKind.Null - ? result - : (JsonElement?) null; - } -} \ No newline at end of file diff --git a/DiscordChatExporter.Domain/Internal/Extensions/Utf8JsonWriterExtensions.cs b/DiscordChatExporter.Domain/Internal/Extensions/Utf8JsonWriterExtensions.cs deleted file mode 100644 index 0bf25bdf..00000000 --- a/DiscordChatExporter.Domain/Internal/Extensions/Utf8JsonWriterExtensions.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -using System.Text.Json; - -namespace DiscordChatExporter.Domain.Internal.Extensions -{ - internal static class Utf8JsonWriterExtensions - { - public static void WriteString(this Utf8JsonWriter writer, string propertyName, DateTimeOffset? value) - { - writer.WritePropertyName(propertyName); - - if (value != null) - writer.WriteStringValue(value.Value); - else - writer.WriteNullValue(); - } - - public static void WriteNumber(this Utf8JsonWriter writer, string propertyName, int? value) - { - writer.WritePropertyName(propertyName); - - if (value != null) - writer.WriteNumberValue(value.Value); - else - writer.WriteNullValue(); - } - } -} \ No newline at end of file