From aa1484f5d431296d050e925f69fd6516d90d6cab Mon Sep 17 00:00:00 2001 From: Stone_Red <56473591+Stone-Red-Code@users.noreply.github.com> Date: Sat, 27 Apr 2024 20:11:25 +0200 Subject: [PATCH] Add Name and Description properties to `IContentProcessor` --- src/Markdowser/Processing/IContentProcessor.cs | 4 ++++ .../Processing/Processors/CommonImageProcessor.cs | 7 ++++++- src/Markdowser/Processing/Processors/HtmlProcessor.cs | 4 ++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Markdowser/Processing/IContentProcessor.cs b/src/Markdowser/Processing/IContentProcessor.cs index 09c6412..cd8e4b8 100644 --- a/src/Markdowser/Processing/IContentProcessor.cs +++ b/src/Markdowser/Processing/IContentProcessor.cs @@ -9,6 +9,10 @@ namespace Markdowser.Processing; internal interface IContentProcessor { + string Name { get; } + + string Description { get; } + bool CanProcess(HttpContentHeaders httpContentHeaders); Task Process(HttpResponseMessage httpResponseMessage, IProgress progress); diff --git a/src/Markdowser/Processing/Processors/CommonImageProcessor.cs b/src/Markdowser/Processing/Processors/CommonImageProcessor.cs index 5364948..50e2522 100644 --- a/src/Markdowser/Processing/Processors/CommonImageProcessor.cs +++ b/src/Markdowser/Processing/Processors/CommonImageProcessor.cs @@ -7,8 +7,13 @@ using System.Net.Http.Headers; using System.Threading.Tasks; namespace Markdowser.Processing.Processors; + internal class CommonImageProcessor : IContentProcessor { + public string Name => "Common Image Processor"; + + public string Description => "Processes common image types (e.g. PNG, JPEG, GIF)"; + public bool CanProcess(HttpContentHeaders httpContentHeaders) { if (httpContentHeaders.ContentType?.MediaType == "image/svg+xml") @@ -23,4 +28,4 @@ internal class CommonImageProcessor : IContentProcessor { return new CommonImageContentViewModel(httpResponseMessage.RequestMessage?.RequestUri?.Host?.ToString() ?? "Image", await httpResponseMessage.Content.ReadAsStreamAsync()); } -} +} \ No newline at end of file diff --git a/src/Markdowser/Processing/Processors/HtmlProcessor.cs b/src/Markdowser/Processing/Processors/HtmlProcessor.cs index 66d6c7d..1de3f72 100644 --- a/src/Markdowser/Processing/Processors/HtmlProcessor.cs +++ b/src/Markdowser/Processing/Processors/HtmlProcessor.cs @@ -19,6 +19,10 @@ internal partial class HtmlProcessor : IContentProcessor { private readonly ReverseMarkdown.Converter markdownConverter = new(); + public string Name => "HTML Processor"; + + public string Description => "Processes HTML content"; + public HtmlProcessor() { markdownConverter.Config.UnknownTags = ReverseMarkdown.Config.UnknownTagsOption.Bypass;