diff --git a/SabreTools.Metadata.DatFiles.Test/DatHeaderTests.cs b/SabreTools.Metadata.DatFiles.Test/DatHeaderTests.cs index 46c86387..e41129f5 100644 --- a/SabreTools.Metadata.DatFiles.Test/DatHeaderTests.cs +++ b/SabreTools.Metadata.DatFiles.Test/DatHeaderTests.cs @@ -134,12 +134,12 @@ namespace SabreTools.Metadata.DatFiles.Test public void CloneFormatTest() { DatHeader header = new DatHeader(); - header.Write(DatHeader.DatFormatKey, DatFormat.Logiqx); + header.DatFormat = DatFormat.Logiqx; object clone = header.Clone(); DatHeader? actual = clone as DatHeader; Assert.NotNull(actual); - Assert.Equal(DatFormat.Logiqx, actual.Read(DatHeader.DatFormatKey)); + Assert.Equal(DatFormat.Logiqx, actual.DatFormat); } #endregion diff --git a/SabreTools.Metadata.DatFiles/DatHeader.cs b/SabreTools.Metadata.DatFiles/DatHeader.cs index a1de654f..dbb570ef 100644 --- a/SabreTools.Metadata.DatFiles/DatHeader.cs +++ b/SabreTools.Metadata.DatFiles/DatHeader.cs @@ -17,11 +17,6 @@ namespace SabreTools.Metadata.DatFiles { #region Constants - /// - /// Read or write format - /// - public const string DatFormatKey = "DATFORMAT"; - /// /// External name of the DAT /// @@ -77,6 +72,11 @@ namespace SabreTools.Metadata.DatFiles set => _internal.Date = value; } + /// + /// Read or write format + /// + public DatFormat? DatFormat { get; set; } + public string? DatVersion { get => _internal.DatVersion; @@ -299,7 +299,7 @@ namespace SabreTools.Metadata.DatFiles /// /// Clone the current header /// - public object Clone() => new DatHeader(GetInternalClone()); + public object Clone() => new DatHeader(GetInternalClone()) { DatFormat = DatFormat }; /// /// Clone just the format from the current header @@ -308,7 +308,7 @@ namespace SabreTools.Metadata.DatFiles { var header = new DatHeader(); - header.Write(DatFormatKey, Read(DatFormatKey)); + header.DatFormat = DatFormat; return header; } diff --git a/SabreTools.Metadata.DatFiles/Formats/ArchiveDotOrg.cs b/SabreTools.Metadata.DatFiles/Formats/ArchiveDotOrg.cs index 256037bf..f2b70574 100644 --- a/SabreTools.Metadata.DatFiles/Formats/ArchiveDotOrg.cs +++ b/SabreTools.Metadata.DatFiles/Formats/ArchiveDotOrg.cs @@ -1,4 +1,4 @@ -namespace SabreTools.Metadata.DatFiles.Formats +namespace SabreTools.Metadata.DatFiles.Formats { /// /// Represents a Archive.org file list @@ -17,7 +17,7 @@ /// Parent DatFile to copy from public ArchiveDotOrg(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.ArchiveDotOrg); + Header.DatFormat = DatFormat.ArchiveDotOrg; } } } diff --git a/SabreTools.Metadata.DatFiles/Formats/AttractMode.cs b/SabreTools.Metadata.DatFiles/Formats/AttractMode.cs index 8861f40f..61578ef7 100644 --- a/SabreTools.Metadata.DatFiles/Formats/AttractMode.cs +++ b/SabreTools.Metadata.DatFiles/Formats/AttractMode.cs @@ -20,7 +20,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public AttractMode(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.AttractMode); + Header.DatFormat = DatFormat.AttractMode; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs b/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs index 46b8bf7f..e4f16d58 100644 --- a/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs +++ b/SabreTools.Metadata.DatFiles/Formats/ClrMamePro.cs @@ -39,7 +39,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public ClrMamePro(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.ClrMamePro); + Header.DatFormat = DatFormat.ClrMamePro; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/CommaSeparatedValue.cs b/SabreTools.Metadata.DatFiles/Formats/CommaSeparatedValue.cs index 07498563..12aa2fc1 100644 --- a/SabreTools.Metadata.DatFiles/Formats/CommaSeparatedValue.cs +++ b/SabreTools.Metadata.DatFiles/Formats/CommaSeparatedValue.cs @@ -12,7 +12,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public CommaSeparatedValue(DatFile? datFile) : base(datFile) { _delim = ','; - Header.Write(DatHeader.DatFormatKey, DatFormat.CSV); + Header.DatFormat = DatFormat.CSV; } } } diff --git a/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs b/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs index 3a37381c..37bda622 100644 --- a/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs +++ b/SabreTools.Metadata.DatFiles/Formats/DosCenter.cs @@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public DosCenter(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.DOSCenter); + Header.DatFormat = DatFormat.DOSCenter; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/EverdriveSmdb.cs b/SabreTools.Metadata.DatFiles/Formats/EverdriveSmdb.cs index f6efbec2..e680cc80 100644 --- a/SabreTools.Metadata.DatFiles/Formats/EverdriveSmdb.cs +++ b/SabreTools.Metadata.DatFiles/Formats/EverdriveSmdb.cs @@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public EverdriveSMDB(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.EverdriveSMDB); + Header.DatFormat = DatFormat.EverdriveSMDB; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Listrom.cs b/SabreTools.Metadata.DatFiles/Formats/Listrom.cs index bfba39fa..8a5ef1cc 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Listrom.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Listrom.cs @@ -22,7 +22,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public Listrom(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.Listrom); + Header.DatFormat = DatFormat.Listrom; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Listxml.cs b/SabreTools.Metadata.DatFiles/Formats/Listxml.cs index 5af06b3a..fbdc657a 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Listxml.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Listxml.cs @@ -216,7 +216,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public Listxml(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.Listxml); + Header.DatFormat = DatFormat.Listxml; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs b/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs index 677968b5..dbc731cd 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Logiqx.cs @@ -253,9 +253,9 @@ namespace SabreTools.Metadata.DatFiles.Formats { _useGame = useGame; if (useGame) - Header.Write(DatHeader.DatFormatKey, DatFormat.LogiqxDeprecated); + Header.DatFormat = DatFormat.LogiqxDeprecated; else - Header.Write(DatHeader.DatFormatKey, DatFormat.Logiqx); + Header.DatFormat = DatFormat.Logiqx; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Md2File.cs b/SabreTools.Metadata.DatFiles/Formats/Md2File.cs index 10c5d283..b3457a79 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Md2File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Md2File.cs @@ -23,7 +23,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public Md2File(DatFile? datFile) : base(datFile) { _hash = HashType.MD2; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpMD2); + Header.DatFormat = DatFormat.RedumpMD2; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Md4File.cs b/SabreTools.Metadata.DatFiles/Formats/Md4File.cs index 3365a09f..d1f2d030 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Md4File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Md4File.cs @@ -23,7 +23,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public Md4File(DatFile? datFile) : base(datFile) { _hash = HashType.MD4; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpMD4); + Header.DatFormat = DatFormat.RedumpMD4; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Md5File.cs b/SabreTools.Metadata.DatFiles/Formats/Md5File.cs index c72f9502..d3b5baa4 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Md5File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Md5File.cs @@ -25,7 +25,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public Md5File(DatFile? datFile) : base(datFile) { _hash = HashType.MD5; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpMD5); + Header.DatFormat = DatFormat.RedumpMD5; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Missfile.cs b/SabreTools.Metadata.DatFiles/Formats/Missfile.cs index ae3a250d..67152059 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Missfile.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Missfile.cs @@ -22,7 +22,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public Missfile(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.MissFile); + Header.DatFormat = DatFormat.MissFile; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs b/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs index 51cba1ae..3539fbfe 100644 --- a/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs +++ b/SabreTools.Metadata.DatFiles/Formats/OfflineList.cs @@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public OfflineList(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.OfflineList); + Header.DatFormat = DatFormat.OfflineList; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/OpenMSX.cs b/SabreTools.Metadata.DatFiles/Formats/OpenMSX.cs index c062b863..1050b672 100644 --- a/SabreTools.Metadata.DatFiles/Formats/OpenMSX.cs +++ b/SabreTools.Metadata.DatFiles/Formats/OpenMSX.cs @@ -60,7 +60,7 @@ The softwaredb.xml file contains information about rom mapper types /// Parent DatFile to copy from public OpenMSX(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.OpenMSX); + Header.DatFormat = DatFormat.OpenMSX; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/RipeMD128File.cs b/SabreTools.Metadata.DatFiles/Formats/RipeMD128File.cs index 4cadad6d..28512ed5 100644 --- a/SabreTools.Metadata.DatFiles/Formats/RipeMD128File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/RipeMD128File.cs @@ -23,7 +23,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public RipeMD128File(DatFile? datFile) : base(datFile) { _hash = HashType.RIPEMD128; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpRIPEMD128); + Header.DatFormat = DatFormat.RedumpRIPEMD128; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/RipeMD160File.cs b/SabreTools.Metadata.DatFiles/Formats/RipeMD160File.cs index 641ad2b2..4dbae14c 100644 --- a/SabreTools.Metadata.DatFiles/Formats/RipeMD160File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/RipeMD160File.cs @@ -23,7 +23,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public RipeMD160File(DatFile? datFile) : base(datFile) { _hash = HashType.RIPEMD160; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpRIPEMD160); + Header.DatFormat = DatFormat.RedumpRIPEMD160; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs b/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs index 926b409f..2a73074b 100644 --- a/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs +++ b/SabreTools.Metadata.DatFiles/Formats/RomCenter.cs @@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public RomCenter(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.RomCenter); + Header.DatFormat = DatFormat.RomCenter; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/SabreJSON.cs b/SabreTools.Metadata.DatFiles/Formats/SabreJSON.cs index 46f57435..50b39bfb 100644 --- a/SabreTools.Metadata.DatFiles/Formats/SabreJSON.cs +++ b/SabreTools.Metadata.DatFiles/Formats/SabreJSON.cs @@ -32,7 +32,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public SabreJSON(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.SabreJSON); + Header.DatFormat = DatFormat.SabreJSON; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/SabreXML.cs b/SabreTools.Metadata.DatFiles/Formats/SabreXML.cs index 19375b9f..99c18d65 100644 --- a/SabreTools.Metadata.DatFiles/Formats/SabreXML.cs +++ b/SabreTools.Metadata.DatFiles/Formats/SabreXML.cs @@ -31,7 +31,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public SabreXML(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.SabreXML); + Header.DatFormat = DatFormat.SabreXML; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/SemicolonSeparatedValue.cs b/SabreTools.Metadata.DatFiles/Formats/SemicolonSeparatedValue.cs index 4940b556..42c1660a 100644 --- a/SabreTools.Metadata.DatFiles/Formats/SemicolonSeparatedValue.cs +++ b/SabreTools.Metadata.DatFiles/Formats/SemicolonSeparatedValue.cs @@ -12,7 +12,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public SemicolonSeparatedValue(DatFile? datFile) : base(datFile) { _delim = ';'; - Header.Write(DatHeader.DatFormatKey, DatFormat.SSV); + Header.DatFormat = DatFormat.SSV; } } } diff --git a/SabreTools.Metadata.DatFiles/Formats/SfvFile.cs b/SabreTools.Metadata.DatFiles/Formats/SfvFile.cs index c2c7f122..f106c6bd 100644 --- a/SabreTools.Metadata.DatFiles/Formats/SfvFile.cs +++ b/SabreTools.Metadata.DatFiles/Formats/SfvFile.cs @@ -23,7 +23,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public SfvFile(DatFile? datFile) : base(datFile) { _hash = HashType.CRC32; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpSFV); + Header.DatFormat = DatFormat.RedumpSFV; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs b/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs index f1fe3be2..ef7ddfe2 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Sha1File.cs @@ -25,7 +25,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public Sha1File(DatFile? datFile) : base(datFile) { _hash = HashType.SHA1; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpSHA1); + Header.DatFormat = DatFormat.RedumpSHA1; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs b/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs index 67bb2468..e24a29d3 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Sha256File.cs @@ -24,7 +24,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public Sha256File(DatFile? datFile) : base(datFile) { _hash = HashType.SHA256; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpSHA256); + Header.DatFormat = DatFormat.RedumpSHA256; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Sha384File.cs b/SabreTools.Metadata.DatFiles/Formats/Sha384File.cs index 9471cdb2..2ef52335 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Sha384File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Sha384File.cs @@ -23,7 +23,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public Sha384File(DatFile? datFile) : base(datFile) { _hash = HashType.SHA384; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpSHA384); + Header.DatFormat = DatFormat.RedumpSHA384; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/Sha512File.cs b/SabreTools.Metadata.DatFiles/Formats/Sha512File.cs index cb0fdc92..81bf39a8 100644 --- a/SabreTools.Metadata.DatFiles/Formats/Sha512File.cs +++ b/SabreTools.Metadata.DatFiles/Formats/Sha512File.cs @@ -23,7 +23,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public Sha512File(DatFile? datFile) : base(datFile) { _hash = HashType.SHA512; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpSHA512); + Header.DatFormat = DatFormat.RedumpSHA512; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs b/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs index 40b0ec09..a0fc9f15 100644 --- a/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs +++ b/SabreTools.Metadata.DatFiles/Formats/SoftwareList.cs @@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatFiles.Formats /// Parent DatFile to copy from public SoftwareList(DatFile? datFile) : base(datFile) { - Header.Write(DatHeader.DatFormatKey, DatFormat.SoftwareList); + Header.DatFormat = DatFormat.SoftwareList; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs b/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs index b418d944..17661e36 100644 --- a/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs +++ b/SabreTools.Metadata.DatFiles/Formats/SpamSumFile.cs @@ -24,7 +24,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public SpamSumFile(DatFile? datFile) : base(datFile) { _hash = HashType.SpamSum; - Header.Write(DatHeader.DatFormatKey, DatFormat.RedumpSpamSum); + Header.DatFormat = DatFormat.RedumpSpamSum; } /// diff --git a/SabreTools.Metadata.DatFiles/Formats/TabSeparatedValue.cs b/SabreTools.Metadata.DatFiles/Formats/TabSeparatedValue.cs index ce31ed81..369ad80b 100644 --- a/SabreTools.Metadata.DatFiles/Formats/TabSeparatedValue.cs +++ b/SabreTools.Metadata.DatFiles/Formats/TabSeparatedValue.cs @@ -12,7 +12,7 @@ namespace SabreTools.Metadata.DatFiles.Formats public TabSeparatedValue(DatFile? datFile) : base(datFile) { _delim = '\t'; - Header.Write(DatHeader.DatFormatKey, DatFormat.TSV); + Header.DatFormat = DatFormat.TSV; } } }