From db92acfdccfea7c93f679f25ff32d627dc35ce24 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Tue, 21 May 2024 17:09:24 -0400 Subject: [PATCH] Reduce surface area of generation method --- CHANGELIST.md | 1 + MPF.Core/Processors/Aaru.cs | 2 +- MPF.Core/Processors/BaseProcessor.cs | 3 ++- MPF.Core/Processors/CleanRip.cs | 2 +- MPF.Core/Processors/DiscImageCreator.cs | 8 ++++---- MPF.Core/Processors/PS3CFW.cs | 2 +- MPF.Core/Processors/Redumper.cs | 2 +- MPF.Core/Processors/UmdImageCreator.cs | 2 +- MPF.Core/Processors/XboxBackupCreator.cs | 6 +++--- MPF.Core/SubmissionInfoTool.cs | 2 +- 10 files changed, 16 insertions(+), 14 deletions(-) diff --git a/CHANGELIST.md b/CHANGELIST.md index b4ee6231..c374a49f 100644 --- a/CHANGELIST.md +++ b/CHANGELIST.md @@ -26,6 +26,7 @@ - Slight tweak to Result class variables - Move constants into related classes - Separate out artifact generation +- Reduce surface area of generation method ### 3.1.9a (2024-05-21) diff --git a/MPF.Core/Processors/Aaru.cs b/MPF.Core/Processors/Aaru.cs index f07eeaa1..e6380fa1 100644 --- a/MPF.Core/Processors/Aaru.cs +++ b/MPF.Core/Processors/Aaru.cs @@ -101,7 +101,7 @@ namespace MPF.Core.Processors } /// - public override void GenerateSubmissionInfo(SubmissionInfo info, Options options, string basePath, Drive? drive) + public override void GenerateSubmissionInfo(SubmissionInfo info, string basePath, Drive? drive, bool redumpCompat) { // TODO: Fill in submission info specifics for Aaru var outputDirectory = Path.GetDirectoryName(basePath); diff --git a/MPF.Core/Processors/BaseProcessor.cs b/MPF.Core/Processors/BaseProcessor.cs index 8865bf1c..64044ab1 100644 --- a/MPF.Core/Processors/BaseProcessor.cs +++ b/MPF.Core/Processors/BaseProcessor.cs @@ -64,7 +64,8 @@ namespace MPF.Core.Processors /// Options object representing user-defined options /// Base filename and path to use for checking /// Drive representing the disc to get information from - public abstract void GenerateSubmissionInfo(SubmissionInfo submissionInfo, Options options, string basePath, Drive? drive); + /// Determines if outputs are processed according to Redump specifications + public abstract void GenerateSubmissionInfo(SubmissionInfo submissionInfo, string basePath, Drive? drive, bool redumpCompat); #endregion diff --git a/MPF.Core/Processors/CleanRip.cs b/MPF.Core/Processors/CleanRip.cs index 414bd5c2..17039170 100644 --- a/MPF.Core/Processors/CleanRip.cs +++ b/MPF.Core/Processors/CleanRip.cs @@ -60,7 +60,7 @@ namespace MPF.Core.Processors } /// - public override void GenerateSubmissionInfo(SubmissionInfo info, Options options, string basePath, Drive? drive) + public override void GenerateSubmissionInfo(SubmissionInfo info, string basePath, Drive? drive, bool redumpCompat) { // Ensure that required sections exist info = Builder.EnsureAllSections(info); diff --git a/MPF.Core/Processors/DiscImageCreator.cs b/MPF.Core/Processors/DiscImageCreator.cs index e2e431f5..0d03fc5c 100644 --- a/MPF.Core/Processors/DiscImageCreator.cs +++ b/MPF.Core/Processors/DiscImageCreator.cs @@ -286,7 +286,7 @@ namespace MPF.Core.Processors } /// - public override void GenerateSubmissionInfo(SubmissionInfo info, Options options, string basePath, Drive? drive) + public override void GenerateSubmissionInfo(SubmissionInfo info, string basePath, Drive? drive, bool redumpCompat) { var outputDirectory = Path.GetDirectoryName(basePath); @@ -395,7 +395,7 @@ namespace MPF.Core.Processors } // Read the PVD - if (!options.EnableRedumpCompatibility || System != RedumpSystem.MicrosoftXbox) + if (!redumpCompat || System != RedumpSystem.MicrosoftXbox) info.Extras!.PVD = GetPVD($"{basePath}_mainInfo.txt") ?? string.Empty; // Bluray-specific options @@ -476,7 +476,7 @@ namespace MPF.Core.Processors { info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.XMID] = xmidString?.TrimEnd('\0') ?? string.Empty; info.CommonDiscInfo.Serial = xmid.Serial ?? string.Empty; - if (!options.EnableRedumpCompatibility) + if (!redumpCompat) info.VersionAndEditions!.Version = xmid.Version ?? string.Empty; info.CommonDiscInfo.Region = InfoTool.GetXGDRegion(xmid.Model.RegionIdentifier); @@ -525,7 +525,7 @@ namespace MPF.Core.Processors { info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.XeMID] = xemidString?.TrimEnd('\0') ?? string.Empty; info.CommonDiscInfo.Serial = xemid.Serial ?? string.Empty; - if (!options.EnableRedumpCompatibility) + if (!redumpCompat) info.VersionAndEditions!.Version = xemid.Version ?? string.Empty; info.CommonDiscInfo.Region = InfoTool.GetXGDRegion(xemid.Model.RegionIdentifier); diff --git a/MPF.Core/Processors/PS3CFW.cs b/MPF.Core/Processors/PS3CFW.cs index 76e4428f..41f50aa5 100644 --- a/MPF.Core/Processors/PS3CFW.cs +++ b/MPF.Core/Processors/PS3CFW.cs @@ -55,7 +55,7 @@ namespace MPF.Core.Processors } /// - public override void GenerateSubmissionInfo(SubmissionInfo info, Options options, string basePath, Drive? drive) + public override void GenerateSubmissionInfo(SubmissionInfo info, string basePath, Drive? drive, bool redumpCompat) { // Ensure that required sections exist info = Builder.EnsureAllSections(info); diff --git a/MPF.Core/Processors/Redumper.cs b/MPF.Core/Processors/Redumper.cs index 409a9727..58bde7d5 100644 --- a/MPF.Core/Processors/Redumper.cs +++ b/MPF.Core/Processors/Redumper.cs @@ -172,7 +172,7 @@ namespace MPF.Core.Processors } /// - public override void GenerateSubmissionInfo(SubmissionInfo info, Options options, string basePath, Drive? drive) + public override void GenerateSubmissionInfo(SubmissionInfo info, string basePath, Drive? drive, bool redumpCompat) { // Ensure that required sections exist info = Builder.EnsureAllSections(info); diff --git a/MPF.Core/Processors/UmdImageCreator.cs b/MPF.Core/Processors/UmdImageCreator.cs index ef509846..2565964f 100644 --- a/MPF.Core/Processors/UmdImageCreator.cs +++ b/MPF.Core/Processors/UmdImageCreator.cs @@ -70,7 +70,7 @@ namespace MPF.Core.Processors } /// - public override void GenerateSubmissionInfo(SubmissionInfo info, Options options, string basePath, Drive? drive) + public override void GenerateSubmissionInfo(SubmissionInfo info, string basePath, Drive? drive, bool redumpCompat) { // Ensure that required sections exist info = Builder.EnsureAllSections(info); diff --git a/MPF.Core/Processors/XboxBackupCreator.cs b/MPF.Core/Processors/XboxBackupCreator.cs index ca504a37..a79d17cf 100644 --- a/MPF.Core/Processors/XboxBackupCreator.cs +++ b/MPF.Core/Processors/XboxBackupCreator.cs @@ -80,7 +80,7 @@ namespace MPF.Core.Processors } /// - public override void GenerateSubmissionInfo(SubmissionInfo info, Options options, string basePath, Drive? drive) + public override void GenerateSubmissionInfo(SubmissionInfo info, string basePath, Drive? drive, bool redumpCompat) { // Ensure that required sections exist info = Builder.EnsureAllSections(info); @@ -140,7 +140,7 @@ namespace MPF.Core.Processors { info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.XMID] = xmidString?.TrimEnd('\0') ?? string.Empty; info.CommonDiscInfo.Serial = xmid.Serial ?? string.Empty; - if (!options.EnableRedumpCompatibility) + if (!redumpCompat) info.VersionAndEditions!.Version = xmid.Version ?? string.Empty; info.CommonDiscInfo.Region = InfoTool.GetXGDRegion(xmid.Model.RegionIdentifier); @@ -164,7 +164,7 @@ namespace MPF.Core.Processors { info.CommonDiscInfo!.CommentsSpecialFields![SiteCode.XeMID] = xemidString?.TrimEnd('\0') ?? string.Empty; info.CommonDiscInfo.Serial = xemid.Serial ?? string.Empty; - if (!options.EnableRedumpCompatibility) + if (!redumpCompat) info.VersionAndEditions!.Version = xemid.Version ?? string.Empty; info.CommonDiscInfo.Region = InfoTool.GetXGDRegion(xemid.Model.RegionIdentifier); diff --git a/MPF.Core/SubmissionInfoTool.cs b/MPF.Core/SubmissionInfoTool.cs index 112b395b..aec0feef 100644 --- a/MPF.Core/SubmissionInfoTool.cs +++ b/MPF.Core/SubmissionInfoTool.cs @@ -83,7 +83,7 @@ namespace MPF.Core SubmissionInfo info = CreateDefaultSubmissionInfo(system, mediaType, options.AddPlaceholders); // Get specific tool output handling - processor?.GenerateSubmissionInfo(info, options, combinedBase, drive); + processor?.GenerateSubmissionInfo(info, combinedBase, drive, options.EnableRedumpCompatibility); if (options.IncludeArtifacts) processor?.GenerateArtifacts(info, combinedBase);