From e7e134eb76fe5b0b82dfa8b1c3cb6e033ecce2ba Mon Sep 17 00:00:00 2001 From: Carel Lotz Date: Tue, 2 Jan 2024 13:42:56 +0200 Subject: [PATCH] Remove output formatters --- .../PlantUml/FormatterFactory.cs | 41 ------------------- .../PlantUml/IOutputFormatter.cs | 6 --- .../OutputFormatters/AsciiOutputFormatter.cs | 18 -------- .../AsciiUnicodeOutputFormatter.cs | 17 -------- .../OutputFormatters/SvgOutputFormatter.cs | 16 -------- .../PlantUml/PlantUmlCodeBlockRenderer.cs | 11 +++-- 6 files changed, 8 insertions(+), 101 deletions(-) delete mode 100644 src/Docfx.MarkdigEngine.Extensions/PlantUml/FormatterFactory.cs delete mode 100644 src/Docfx.MarkdigEngine.Extensions/PlantUml/IOutputFormatter.cs delete mode 100644 src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiOutputFormatter.cs delete mode 100644 src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiUnicodeOutputFormatter.cs delete mode 100644 src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/SvgOutputFormatter.cs diff --git a/src/Docfx.MarkdigEngine.Extensions/PlantUml/FormatterFactory.cs b/src/Docfx.MarkdigEngine.Extensions/PlantUml/FormatterFactory.cs deleted file mode 100644 index 21e6522d15a..00000000000 --- a/src/Docfx.MarkdigEngine.Extensions/PlantUml/FormatterFactory.cs +++ /dev/null @@ -1,41 +0,0 @@ -using PlantUml.Net; - -namespace Docfx.MarkdigEngine.Extensions; - -internal class FormatterFactory -{ - private readonly DocfxPlantUmlSettings settings; - - private OutputFormat OutputFormat => settings.OutputFormat; - - public FormatterFactory(DocfxPlantUmlSettings settings) - { - this.settings = settings; - } - - internal IOutputFormatter CreateOutputFormatter() - { - switch (OutputFormat) - { - case OutputFormat.Svg: - return new SvgOutputFormatter(); - - case OutputFormat.Ascii: - return new AsciiOutputFormatter(); - - case OutputFormat.Ascii_Unicode: - return new AsciiUnicodeOutputFormatter(); - - case OutputFormat.Png: - case OutputFormat.Eps: - case OutputFormat.Pdf: - case OutputFormat.Vdx: - case OutputFormat.Xmi: - case OutputFormat.Scxml: - case OutputFormat.Html: - case OutputFormat.LaTeX: - default: - throw new NotSupportedException($"output format {OutputFormat} is not currently supported"); - } - } -} diff --git a/src/Docfx.MarkdigEngine.Extensions/PlantUml/IOutputFormatter.cs b/src/Docfx.MarkdigEngine.Extensions/PlantUml/IOutputFormatter.cs deleted file mode 100644 index 0ae92694516..00000000000 --- a/src/Docfx.MarkdigEngine.Extensions/PlantUml/IOutputFormatter.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace Docfx.MarkdigEngine.Extensions; - -internal interface IOutputFormatter -{ - string FormatOutput(byte[] output); -} diff --git a/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiOutputFormatter.cs b/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiOutputFormatter.cs deleted file mode 100644 index 349b7743296..00000000000 --- a/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiOutputFormatter.cs +++ /dev/null @@ -1,18 +0,0 @@ - -using static System.Text.Encoding; - -namespace Docfx.MarkdigEngine.Extensions; - -internal class AsciiOutputFormatter : IOutputFormatter -{ - public AsciiOutputFormatter() - { - } - - public string FormatOutput(byte[] output) - { - string ascii = ASCII.GetString(output); - return $"
{ascii}
"; - } -} - diff --git a/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiUnicodeOutputFormatter.cs b/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiUnicodeOutputFormatter.cs deleted file mode 100644 index bdc1b9933f9..00000000000 --- a/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/AsciiUnicodeOutputFormatter.cs +++ /dev/null @@ -1,17 +0,0 @@ - -using static System.Text.Encoding; - -namespace Docfx.MarkdigEngine.Extensions; - -internal class AsciiUnicodeOutputFormatter : IOutputFormatter -{ - public AsciiUnicodeOutputFormatter() - { - } - - public string FormatOutput(byte[] output) - { - string ascii = UTF8.GetString(output); - return $"
{ascii}
"; - } -} diff --git a/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/SvgOutputFormatter.cs b/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/SvgOutputFormatter.cs deleted file mode 100644 index d530df2d280..00000000000 --- a/src/Docfx.MarkdigEngine.Extensions/PlantUml/OutputFormatters/SvgOutputFormatter.cs +++ /dev/null @@ -1,16 +0,0 @@ -using static System.Text.Encoding; - -namespace Docfx.MarkdigEngine.Extensions; - -internal class SvgOutputFormatter : IOutputFormatter -{ - public SvgOutputFormatter() - { - } - - public string FormatOutput(byte[] output) - { - string svg = UTF8.GetString(output); - return $"
{svg}
"; - } -} diff --git a/src/Docfx.MarkdigEngine.Extensions/PlantUml/PlantUmlCodeBlockRenderer.cs b/src/Docfx.MarkdigEngine.Extensions/PlantUml/PlantUmlCodeBlockRenderer.cs index 9f6adaebca1..9adc78f3e95 100644 --- a/src/Docfx.MarkdigEngine.Extensions/PlantUml/PlantUmlCodeBlockRenderer.cs +++ b/src/Docfx.MarkdigEngine.Extensions/PlantUml/PlantUmlCodeBlockRenderer.cs @@ -1,3 +1,5 @@ +using static System.Text.Encoding; + using Markdig.Renderers; using Markdig.Syntax; using Markdig.Renderers.Html; @@ -71,13 +73,16 @@ private static string FormatOutput(OutputFormat format, byte[] output) switch (format) { case OutputFormat.Svg: - return new SvgOutputFormatter().FormatOutput(output); + string svg = UTF8.GetString(output); + return $"
{svg}
"; case OutputFormat.Ascii: - return new AsciiOutputFormatter().FormatOutput(output); + string ascii = ASCII.GetString(output); + return $"
{ascii}
"; case OutputFormat.Ascii_Unicode: - return new AsciiUnicodeOutputFormatter().FormatOutput(output); + string asciiUnicode = UTF8.GetString(output); + return $"
{asciiUnicode}
"; case OutputFormat.Png: case OutputFormat.Eps: