From cfceb9e32a11f85516c22494b00fb3e3fbddcc84 Mon Sep 17 00:00:00 2001 From: Michael Becker Date: Mon, 3 Oct 2022 09:37:30 -0400 Subject: [PATCH] convert ChecksumModule into a Plugin to take advantage of plugin discovery architecture --- .../{ChecksumModule.cs => ChecksumPlugin.cs} | 3 ++- .../Modules/Adler32/Adler32ChecksumModule.cs | 2 +- .../Modules/CRC32/CRC32ChecksumModule.cs | 2 +- .../Modules/StrangeCRC/StrangeCRCChecksumModule.cs | 2 +- .../UniversalEditor.Checksum.csproj | 8 +++++++- .../Modules/Bzip2/Internal/BZip2InputStream.cs | 2 +- .../Modules/Bzip2/Internal/BZip2OutputStream.cs | 2 +- .../UniversalEditor.Compression.csproj | 4 ++++ .../DataFormats/FileSystem/SMA/SMADataFormat.cs | 2 +- .../Checksum/Modules/GCF/GCFChecksumModule.cs | 2 +- 10 files changed, 20 insertions(+), 9 deletions(-) rename Libraries/UniversalEditor.Checksum/{ChecksumModule.cs => ChecksumPlugin.cs} (97%) diff --git a/Libraries/UniversalEditor.Checksum/ChecksumModule.cs b/Libraries/UniversalEditor.Checksum/ChecksumPlugin.cs similarity index 97% rename from Libraries/UniversalEditor.Checksum/ChecksumModule.cs rename to Libraries/UniversalEditor.Checksum/ChecksumPlugin.cs index eb2636d7..14b6e9c4 100644 --- a/Libraries/UniversalEditor.Checksum/ChecksumModule.cs +++ b/Libraries/UniversalEditor.Checksum/ChecksumPlugin.cs @@ -20,13 +20,14 @@ // along with this program. If not, see . using System; +using MBS.Framework; namespace UniversalEditor.Checksum { /// /// Provides the minimal functionality required to create a checksum calculation module. /// - public abstract class ChecksumModule + public abstract class ChecksumPlugin : Plugin { /// /// The name of this checksum calculation module. diff --git a/Libraries/UniversalEditor.Checksum/Modules/Adler32/Adler32ChecksumModule.cs b/Libraries/UniversalEditor.Checksum/Modules/Adler32/Adler32ChecksumModule.cs index c6035ffd..85f0bfdb 100644 --- a/Libraries/UniversalEditor.Checksum/Modules/Adler32/Adler32ChecksumModule.cs +++ b/Libraries/UniversalEditor.Checksum/Modules/Adler32/Adler32ChecksumModule.cs @@ -75,7 +75,7 @@ namespace UniversalEditor.Checksum.Modules.Adler32 /// /// /// - public sealed class Adler32ChecksumModule : ChecksumModule + public sealed class Adler32ChecksumModule : ChecksumPlugin { public override string Name { diff --git a/Libraries/UniversalEditor.Checksum/Modules/CRC32/CRC32ChecksumModule.cs b/Libraries/UniversalEditor.Checksum/Modules/CRC32/CRC32ChecksumModule.cs index 2de09388..e783fb5b 100644 --- a/Libraries/UniversalEditor.Checksum/Modules/CRC32/CRC32ChecksumModule.cs +++ b/Libraries/UniversalEditor.Checksum/Modules/CRC32/CRC32ChecksumModule.cs @@ -64,7 +64,7 @@ namespace UniversalEditor.Checksum.Modules.CRC32 /// the information needed to generate CRC's on data a byte at a time for all /// combinations of CRC register values and incoming bytes. /// - public sealed class CRC32ChecksumModule : ChecksumModule + public sealed class CRC32ChecksumModule : ChecksumPlugin { const uint CrcSeed = 0xFFFFFFFF; diff --git a/Libraries/UniversalEditor.Checksum/Modules/StrangeCRC/StrangeCRCChecksumModule.cs b/Libraries/UniversalEditor.Checksum/Modules/StrangeCRC/StrangeCRCChecksumModule.cs index e9804c8d..1a235a0e 100644 --- a/Libraries/UniversalEditor.Checksum/Modules/StrangeCRC/StrangeCRCChecksumModule.cs +++ b/Libraries/UniversalEditor.Checksum/Modules/StrangeCRC/StrangeCRCChecksumModule.cs @@ -43,7 +43,7 @@ namespace UniversalEditor.Checksum.Modules.StrangeCRC /// /// Bzip2 checksum algorithm /// - public class StrangeCRCChecksumModule : ChecksumModule + public class StrangeCRCChecksumModule : ChecksumPlugin { public override string Name { get { return "StrangeCRC"; } } diff --git a/Libraries/UniversalEditor.Checksum/UniversalEditor.Checksum.csproj b/Libraries/UniversalEditor.Checksum/UniversalEditor.Checksum.csproj index 8e763964..44576653 100644 --- a/Libraries/UniversalEditor.Checksum/UniversalEditor.Checksum.csproj +++ b/Libraries/UniversalEditor.Checksum/UniversalEditor.Checksum.csproj @@ -42,12 +42,18 @@ - + + + + {00266B21-35C9-4A7F-A6BA-D54D7FDCC25C} + MBS.Framework + +