From ef0efe66bd0ef0821877fc7b3e72f3fa8b2d44ca Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Thu, 4 Apr 2024 01:38:08 -0400 Subject: [PATCH] Migrate IFileDeserializer implementation to base class --- .../Deserializers/AACS.cs | 12 ------- .../Deserializers/AttractMode.cs | 12 ------- .../Deserializers/BDPlus.cs | 12 ------- .../Deserializers/BFPK.cs | 12 ------- SabreTools.Serialization/Deserializers/BSP.cs | 12 ------- .../Deserializers/BaseBinaryDeserializer.cs | 16 +++++++-- SabreTools.Serialization/Deserializers/CFB.cs | 12 ------- SabreTools.Serialization/Deserializers/CIA.cs | 12 ------- .../Deserializers/ClrMamePro.cs | 34 +++++++++++++++++-- .../Deserializers/CueSheet.cs | 12 ------- .../Deserializers/DosCenter.cs | 12 ------- .../Deserializers/EverdriveSMDB.cs | 12 ------- SabreTools.Serialization/Deserializers/GCF.cs | 12 ------- .../Deserializers/Hashfile.cs | 2 +- SabreTools.Serialization/Deserializers/IRD.cs | 12 ------- .../Deserializers/InstallShieldCabinet.cs | 12 ------- .../Deserializers/JsonFile.cs | 3 +- .../Deserializers/LinearExecutable.cs | 12 ------- .../Deserializers/Listrom.cs | 12 ------- .../Deserializers/MSDOS.cs | 12 ------- .../Deserializers/MicrosoftCabinet.cs | 12 ------- .../Deserializers/MoPaQ.cs | 12 ------- .../Deserializers/N3DS.cs | 12 ------- SabreTools.Serialization/Deserializers/NCF.cs | 12 ------- .../Deserializers/NewExecutable.cs | 12 ------- .../Deserializers/Nitro.cs | 12 ------- SabreTools.Serialization/Deserializers/PAK.cs | 12 ------- SabreTools.Serialization/Deserializers/PFF.cs | 12 ------- SabreTools.Serialization/Deserializers/PIC.cs | 12 ------- .../Deserializers/PlayJAudio.cs | 12 ------- .../Deserializers/PlayJPlaylist.cs | 12 ------- .../Deserializers/PortableExecutable.cs | 12 ------- .../Deserializers/Quantum.cs | 12 ------- .../Deserializers/RomCenter.cs | 12 ------- SabreTools.Serialization/Deserializers/SGA.cs | 12 ------- .../Deserializers/SeparatedValue.cs | 3 +- .../Deserializers/VBSP.cs | 12 ------- SabreTools.Serialization/Deserializers/VPK.cs | 12 ------- SabreTools.Serialization/Deserializers/WAD.cs | 12 ------- SabreTools.Serialization/Deserializers/XZP.cs | 12 ------- .../Deserializers/XmlFile.cs | 12 ------- 41 files changed, 49 insertions(+), 441 deletions(-) diff --git a/SabreTools.Serialization/Deserializers/AACS.cs b/SabreTools.Serialization/Deserializers/AACS.cs index 1fc9b08f..7173b7e8 100644 --- a/SabreTools.Serialization/Deserializers/AACS.cs +++ b/SabreTools.Serialization/Deserializers/AACS.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class AACS : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public MediaKeyBlock? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/AttractMode.cs b/SabreTools.Serialization/Deserializers/AttractMode.cs index fb68e63d..ccfc54da 100644 --- a/SabreTools.Serialization/Deserializers/AttractMode.cs +++ b/SabreTools.Serialization/Deserializers/AttractMode.cs @@ -10,7 +10,6 @@ namespace SabreTools.Serialization.Deserializers { public class AttractMode : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { #region Constants @@ -21,17 +20,6 @@ namespace SabreTools.Serialization.Deserializers #endregion - #region IFileDeserializer - - /// - public MetadataFile? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/BDPlus.cs b/SabreTools.Serialization/Deserializers/BDPlus.cs index d10878cc..22ad3486 100644 --- a/SabreTools.Serialization/Deserializers/BDPlus.cs +++ b/SabreTools.Serialization/Deserializers/BDPlus.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class BDPlus : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public SVM? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/BFPK.cs b/SabreTools.Serialization/Deserializers/BFPK.cs index ccd2ec96..947b4980 100644 --- a/SabreTools.Serialization/Deserializers/BFPK.cs +++ b/SabreTools.Serialization/Deserializers/BFPK.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class BFPK : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Archive? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/BSP.cs b/SabreTools.Serialization/Deserializers/BSP.cs index 37e0a5c6..7752c023 100644 --- a/SabreTools.Serialization/Deserializers/BSP.cs +++ b/SabreTools.Serialization/Deserializers/BSP.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class BSP : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.BSP.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/BaseBinaryDeserializer.cs b/SabreTools.Serialization/Deserializers/BaseBinaryDeserializer.cs index 1a064e7a..2fe8858a 100644 --- a/SabreTools.Serialization/Deserializers/BaseBinaryDeserializer.cs +++ b/SabreTools.Serialization/Deserializers/BaseBinaryDeserializer.cs @@ -12,8 +12,9 @@ namespace SabreTools.Serialization.Deserializers /// /// Type of the model to deserialize /// These methods assume there is a concrete implementation of the deserialzier for the model available - public abstract class BaseBinaryDeserializer - : IByteDeserializer + public abstract class BaseBinaryDeserializer : + IByteDeserializer, + IFileDeserializer { #region IByteDeserializer @@ -35,6 +36,17 @@ namespace SabreTools.Serialization.Deserializers #endregion + #region IFileDeserializer + + /// + public virtual TModel? Deserialize(string? path) + { + using var stream = PathProcessor.OpenStream(path); + return DeserializeStream(stream); + } + + #endregion + #region Static Implementations /// diff --git a/SabreTools.Serialization/Deserializers/CFB.cs b/SabreTools.Serialization/Deserializers/CFB.cs index e6bafee5..fd30e34c 100644 --- a/SabreTools.Serialization/Deserializers/CFB.cs +++ b/SabreTools.Serialization/Deserializers/CFB.cs @@ -11,20 +11,8 @@ namespace SabreTools.Serialization.Deserializers { public class CFB : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Binary? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/CIA.cs b/SabreTools.Serialization/Deserializers/CIA.cs index e1f932e0..9b7b8c52 100644 --- a/SabreTools.Serialization/Deserializers/CIA.cs +++ b/SabreTools.Serialization/Deserializers/CIA.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class CIA : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.N3DS.CIA? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/ClrMamePro.cs b/SabreTools.Serialization/Deserializers/ClrMamePro.cs index 1c112107..c6f433a4 100644 --- a/SabreTools.Serialization/Deserializers/ClrMamePro.cs +++ b/SabreTools.Serialization/Deserializers/ClrMamePro.cs @@ -10,9 +10,39 @@ namespace SabreTools.Serialization.Deserializers { public class ClrMamePro : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { + #region IByteDeserializer + + /// + public static MetadataFile? DeserializeBytes(byte[]? data, int offset, bool quotes = true) + { + var deserializer = new ClrMamePro(); + return deserializer.Deserialize(data, offset, quotes); + } + + /// + public override MetadataFile? Deserialize(byte[]? data, int offset) + => Deserialize(data, offset, true); + + /// + public MetadataFile? Deserialize(byte[]? data, int offset, bool quotes) + { + // If the data is invalid + if (data == null) + return default; + + // If the offset is out of bounds + if (offset < 0 || offset >= data.Length) + return default; + + // Create a memory stream and parse that + var dataStream = new MemoryStream(data, offset, data.Length - offset); + return DeserializeStream(dataStream, quotes); + } + + #endregion + #region IFileDeserializer /// @@ -23,7 +53,7 @@ namespace SabreTools.Serialization.Deserializers } /// - public MetadataFile? Deserialize(string? path) + public override MetadataFile? Deserialize(string? path) => Deserialize(path, true); /// diff --git a/SabreTools.Serialization/Deserializers/CueSheet.cs b/SabreTools.Serialization/Deserializers/CueSheet.cs index 7ff9b1c0..b887562b 100644 --- a/SabreTools.Serialization/Deserializers/CueSheet.cs +++ b/SabreTools.Serialization/Deserializers/CueSheet.cs @@ -11,20 +11,8 @@ namespace SabreTools.Serialization.Deserializers { public class CueSheet : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.CueSheets.CueSheet? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/DosCenter.cs b/SabreTools.Serialization/Deserializers/DosCenter.cs index 92b920d6..975011ab 100644 --- a/SabreTools.Serialization/Deserializers/DosCenter.cs +++ b/SabreTools.Serialization/Deserializers/DosCenter.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class DosCenter : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public MetadataFile? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/EverdriveSMDB.cs b/SabreTools.Serialization/Deserializers/EverdriveSMDB.cs index a48a9f99..2c94b8aa 100644 --- a/SabreTools.Serialization/Deserializers/EverdriveSMDB.cs +++ b/SabreTools.Serialization/Deserializers/EverdriveSMDB.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class EverdriveSMDB : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public MetadataFile? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/GCF.cs b/SabreTools.Serialization/Deserializers/GCF.cs index 993eee95..a9b6eac3 100644 --- a/SabreTools.Serialization/Deserializers/GCF.cs +++ b/SabreTools.Serialization/Deserializers/GCF.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class GCF : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.GCF.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/Hashfile.cs b/SabreTools.Serialization/Deserializers/Hashfile.cs index 359c67a8..2a70c9cb 100644 --- a/SabreTools.Serialization/Deserializers/Hashfile.cs +++ b/SabreTools.Serialization/Deserializers/Hashfile.cs @@ -54,7 +54,7 @@ namespace SabreTools.Serialization.Deserializers } /// - public Models.Hashfile.Hashfile? Deserialize(string? path) + public override Models.Hashfile.Hashfile? Deserialize(string? path) => Deserialize(path, HashType.CRC32); /// diff --git a/SabreTools.Serialization/Deserializers/IRD.cs b/SabreTools.Serialization/Deserializers/IRD.cs index ba9d06b9..3b4dbee8 100644 --- a/SabreTools.Serialization/Deserializers/IRD.cs +++ b/SabreTools.Serialization/Deserializers/IRD.cs @@ -7,20 +7,8 @@ namespace SabreTools.Serialization.Deserializers { public class IRD : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.IRD.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/InstallShieldCabinet.cs b/SabreTools.Serialization/Deserializers/InstallShieldCabinet.cs index a96ef191..79f9cab9 100644 --- a/SabreTools.Serialization/Deserializers/InstallShieldCabinet.cs +++ b/SabreTools.Serialization/Deserializers/InstallShieldCabinet.cs @@ -11,20 +11,8 @@ namespace SabreTools.Serialization.Deserializers // TODO: Add multi-cabinet reading public class InstallShieldCabinet : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Cabinet? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/JsonFile.cs b/SabreTools.Serialization/Deserializers/JsonFile.cs index 5c827655..24a04fe7 100644 --- a/SabreTools.Serialization/Deserializers/JsonFile.cs +++ b/SabreTools.Serialization/Deserializers/JsonFile.cs @@ -11,7 +11,6 @@ namespace SabreTools.Serialization.Deserializers /// public class JsonFile : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { #region IByteDeserializer @@ -48,7 +47,7 @@ namespace SabreTools.Serialization.Deserializers #region IFileDeserializer /// - public virtual T? Deserialize(string? path) + public override T? Deserialize(string? path) => Deserialize(path, new UTF8Encoding(false)); /// diff --git a/SabreTools.Serialization/Deserializers/LinearExecutable.cs b/SabreTools.Serialization/Deserializers/LinearExecutable.cs index 0f260d37..13945e67 100644 --- a/SabreTools.Serialization/Deserializers/LinearExecutable.cs +++ b/SabreTools.Serialization/Deserializers/LinearExecutable.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class LinearExecutable : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Executable? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/Listrom.cs b/SabreTools.Serialization/Deserializers/Listrom.cs index 2a0a8996..d5c784cd 100644 --- a/SabreTools.Serialization/Deserializers/Listrom.cs +++ b/SabreTools.Serialization/Deserializers/Listrom.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class Listrom : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public MetadataFile? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/MSDOS.cs b/SabreTools.Serialization/Deserializers/MSDOS.cs index 2099b8cb..6a5c13f3 100644 --- a/SabreTools.Serialization/Deserializers/MSDOS.cs +++ b/SabreTools.Serialization/Deserializers/MSDOS.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class MSDOS : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Executable? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/MicrosoftCabinet.cs b/SabreTools.Serialization/Deserializers/MicrosoftCabinet.cs index ff9514b1..e823d564 100644 --- a/SabreTools.Serialization/Deserializers/MicrosoftCabinet.cs +++ b/SabreTools.Serialization/Deserializers/MicrosoftCabinet.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers // TODO: Add multi-cabinet reading public class MicrosoftCabinet : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Cabinet? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/MoPaQ.cs b/SabreTools.Serialization/Deserializers/MoPaQ.cs index 262a235a..103012f6 100644 --- a/SabreTools.Serialization/Deserializers/MoPaQ.cs +++ b/SabreTools.Serialization/Deserializers/MoPaQ.cs @@ -11,20 +11,8 @@ namespace SabreTools.Serialization.Deserializers { public class MoPaQ : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Archive? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/N3DS.cs b/SabreTools.Serialization/Deserializers/N3DS.cs index 57e3a98a..ef538882 100644 --- a/SabreTools.Serialization/Deserializers/N3DS.cs +++ b/SabreTools.Serialization/Deserializers/N3DS.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class N3DS : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Cart? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/NCF.cs b/SabreTools.Serialization/Deserializers/NCF.cs index 1d57b10b..c1362951 100644 --- a/SabreTools.Serialization/Deserializers/NCF.cs +++ b/SabreTools.Serialization/Deserializers/NCF.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class NCF : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.NCF.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/NewExecutable.cs b/SabreTools.Serialization/Deserializers/NewExecutable.cs index 4ab9685d..fbc9859b 100644 --- a/SabreTools.Serialization/Deserializers/NewExecutable.cs +++ b/SabreTools.Serialization/Deserializers/NewExecutable.cs @@ -11,20 +11,8 @@ namespace SabreTools.Serialization.Deserializers { public class NewExecutable : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Executable? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/Nitro.cs b/SabreTools.Serialization/Deserializers/Nitro.cs index 4f6de598..d98e00da 100644 --- a/SabreTools.Serialization/Deserializers/Nitro.cs +++ b/SabreTools.Serialization/Deserializers/Nitro.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class Nitro : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Cart? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/PAK.cs b/SabreTools.Serialization/Deserializers/PAK.cs index 9be880cd..3248e374 100644 --- a/SabreTools.Serialization/Deserializers/PAK.cs +++ b/SabreTools.Serialization/Deserializers/PAK.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class PAK : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.PAK.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/PFF.cs b/SabreTools.Serialization/Deserializers/PFF.cs index c0ca7c2a..b1718b24 100644 --- a/SabreTools.Serialization/Deserializers/PFF.cs +++ b/SabreTools.Serialization/Deserializers/PFF.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class PFF : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Archive? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/PIC.cs b/SabreTools.Serialization/Deserializers/PIC.cs index 29e6b1f2..1cdd562d 100644 --- a/SabreTools.Serialization/Deserializers/PIC.cs +++ b/SabreTools.Serialization/Deserializers/PIC.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class PIC : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public DiscInformation? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/PlayJAudio.cs b/SabreTools.Serialization/Deserializers/PlayJAudio.cs index f5db1e92..dad9dfff 100644 --- a/SabreTools.Serialization/Deserializers/PlayJAudio.cs +++ b/SabreTools.Serialization/Deserializers/PlayJAudio.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class PlayJAudio : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public AudioFile? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/PlayJPlaylist.cs b/SabreTools.Serialization/Deserializers/PlayJPlaylist.cs index 6acbfccb..69017fce 100644 --- a/SabreTools.Serialization/Deserializers/PlayJPlaylist.cs +++ b/SabreTools.Serialization/Deserializers/PlayJPlaylist.cs @@ -7,20 +7,8 @@ namespace SabreTools.Serialization.Deserializers { public class PlayJPlaylist : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Playlist? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/PortableExecutable.cs b/SabreTools.Serialization/Deserializers/PortableExecutable.cs index 34775e23..aa24b10b 100644 --- a/SabreTools.Serialization/Deserializers/PortableExecutable.cs +++ b/SabreTools.Serialization/Deserializers/PortableExecutable.cs @@ -12,20 +12,8 @@ namespace SabreTools.Serialization.Deserializers { public class PortableExecutable : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Executable? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/Quantum.cs b/SabreTools.Serialization/Deserializers/Quantum.cs index 8220c9dc..56850f7f 100644 --- a/SabreTools.Serialization/Deserializers/Quantum.cs +++ b/SabreTools.Serialization/Deserializers/Quantum.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class Quantum : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Archive? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/RomCenter.cs b/SabreTools.Serialization/Deserializers/RomCenter.cs index a151bae6..78ed674c 100644 --- a/SabreTools.Serialization/Deserializers/RomCenter.cs +++ b/SabreTools.Serialization/Deserializers/RomCenter.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class RomCenter : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public MetadataFile? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/SGA.cs b/SabreTools.Serialization/Deserializers/SGA.cs index 9d69a423..45965e28 100644 --- a/SabreTools.Serialization/Deserializers/SGA.cs +++ b/SabreTools.Serialization/Deserializers/SGA.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class SGA : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.SGA.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/SeparatedValue.cs b/SabreTools.Serialization/Deserializers/SeparatedValue.cs index 40ec99c5..fc5bd747 100644 --- a/SabreTools.Serialization/Deserializers/SeparatedValue.cs +++ b/SabreTools.Serialization/Deserializers/SeparatedValue.cs @@ -10,7 +10,6 @@ namespace SabreTools.Serialization.Deserializers { public class SeparatedValue : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { #region Constants @@ -62,7 +61,7 @@ namespace SabreTools.Serialization.Deserializers } /// - public MetadataFile? Deserialize(string? path) + public override MetadataFile? Deserialize(string? path) => Deserialize(path, ','); /// diff --git a/SabreTools.Serialization/Deserializers/VBSP.cs b/SabreTools.Serialization/Deserializers/VBSP.cs index b150f874..e58522e6 100644 --- a/SabreTools.Serialization/Deserializers/VBSP.cs +++ b/SabreTools.Serialization/Deserializers/VBSP.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class VBSP : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.VBSP.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/VPK.cs b/SabreTools.Serialization/Deserializers/VPK.cs index 3888d8a7..762b2efe 100644 --- a/SabreTools.Serialization/Deserializers/VPK.cs +++ b/SabreTools.Serialization/Deserializers/VPK.cs @@ -10,20 +10,8 @@ namespace SabreTools.Serialization.Deserializers { public class VPK : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.VPK.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/WAD.cs b/SabreTools.Serialization/Deserializers/WAD.cs index 0b6942b5..4d9b2d20 100644 --- a/SabreTools.Serialization/Deserializers/WAD.cs +++ b/SabreTools.Serialization/Deserializers/WAD.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class WAD : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.WAD.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/XZP.cs b/SabreTools.Serialization/Deserializers/XZP.cs index 421e8446..eb9028ff 100644 --- a/SabreTools.Serialization/Deserializers/XZP.cs +++ b/SabreTools.Serialization/Deserializers/XZP.cs @@ -9,20 +9,8 @@ namespace SabreTools.Serialization.Deserializers { public class XZP : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public Models.XZP.File? Deserialize(string? path) - { - using var stream = PathProcessor.OpenStream(path); - return DeserializeStream(stream); - } - - #endregion - #region IStreamDeserializer /// diff --git a/SabreTools.Serialization/Deserializers/XmlFile.cs b/SabreTools.Serialization/Deserializers/XmlFile.cs index db687741..6344664a 100644 --- a/SabreTools.Serialization/Deserializers/XmlFile.cs +++ b/SabreTools.Serialization/Deserializers/XmlFile.cs @@ -12,20 +12,8 @@ namespace SabreTools.Serialization.Deserializers /// public class XmlFile : BaseBinaryDeserializer, - IFileDeserializer, IStreamDeserializer { - #region IFileDeserializer - - /// - public T? Deserialize(string? path) - { - using var data = PathProcessor.OpenStream(path); - return Deserialize(data); - } - - #endregion - #region IStreamDeserializer ///