Convert DAT format to a property

This commit is contained in:
Matt Nadareski
2026-04-02 22:16:04 -04:00
parent 49d3d9c096
commit a914ee12c3
31 changed files with 40 additions and 40 deletions

View File

@@ -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<DatFormat>(DatHeader.DatFormatKey));
Assert.Equal(DatFormat.Logiqx, actual.DatFormat);
}
#endregion

View File

@@ -17,11 +17,6 @@ namespace SabreTools.Metadata.DatFiles
{
#region Constants
/// <summary>
/// Read or write format
/// </summary>
public const string DatFormatKey = "DATFORMAT";
/// <summary>
/// External name of the DAT
/// </summary>
@@ -77,6 +72,11 @@ namespace SabreTools.Metadata.DatFiles
set => _internal.Date = value;
}
/// <summary>
/// Read or write format
/// </summary>
public DatFormat? DatFormat { get; set; }
public string? DatVersion
{
get => _internal.DatVersion;
@@ -299,7 +299,7 @@ namespace SabreTools.Metadata.DatFiles
/// <summary>
/// Clone the current header
/// </summary>
public object Clone() => new DatHeader(GetInternalClone());
public object Clone() => new DatHeader(GetInternalClone()) { DatFormat = DatFormat };
/// <summary>
/// Clone just the format from the current header
@@ -308,7 +308,7 @@ namespace SabreTools.Metadata.DatFiles
{
var header = new DatHeader();
header.Write(DatFormatKey, Read<DatFormat>(DatFormatKey));
header.DatFormat = DatFormat;
return header;
}

View File

@@ -1,4 +1,4 @@
namespace SabreTools.Metadata.DatFiles.Formats
namespace SabreTools.Metadata.DatFiles.Formats
{
/// <summary>
/// Represents a Archive.org file list
@@ -17,7 +17,7 @@
/// <param name="datFile">Parent DatFile to copy from</param>
public ArchiveDotOrg(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.ArchiveDotOrg);
Header.DatFormat = DatFormat.ArchiveDotOrg;
}
}
}

View File

@@ -20,7 +20,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public AttractMode(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.AttractMode);
Header.DatFormat = DatFormat.AttractMode;
}
/// <inheritdoc/>

View File

@@ -39,7 +39,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public ClrMamePro(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.ClrMamePro);
Header.DatFormat = DatFormat.ClrMamePro;
}
/// <inheritdoc/>

View File

@@ -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;
}
}
}

View File

@@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public DosCenter(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.DOSCenter);
Header.DatFormat = DatFormat.DOSCenter;
}
/// <inheritdoc/>

View File

@@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public EverdriveSMDB(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.EverdriveSMDB);
Header.DatFormat = DatFormat.EverdriveSMDB;
}
/// <inheritdoc/>

View File

@@ -22,7 +22,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public Listrom(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.Listrom);
Header.DatFormat = DatFormat.Listrom;
}
/// <inheritdoc/>

View File

@@ -216,7 +216,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public Listxml(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.Listxml);
Header.DatFormat = DatFormat.Listxml;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -22,7 +22,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public Missfile(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.MissFile);
Header.DatFormat = DatFormat.MissFile;
}
/// <inheritdoc/>

View File

@@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public OfflineList(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.OfflineList);
Header.DatFormat = DatFormat.OfflineList;
}
/// <inheritdoc/>

View File

@@ -60,7 +60,7 @@ The softwaredb.xml file contains information about rom mapper types
/// <param name="datFile">Parent DatFile to copy from</param>
public OpenMSX(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.OpenMSX);
Header.DatFormat = DatFormat.OpenMSX;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -21,7 +21,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public RomCenter(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.RomCenter);
Header.DatFormat = DatFormat.RomCenter;
}
/// <inheritdoc/>

View File

@@ -32,7 +32,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public SabreJSON(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.SabreJSON);
Header.DatFormat = DatFormat.SabreJSON;
}
/// <inheritdoc/>

View File

@@ -31,7 +31,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public SabreXML(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.SabreXML);
Header.DatFormat = DatFormat.SabreXML;
}
/// <inheritdoc/>

View File

@@ -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;
}
}
}

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatFiles.Formats
/// <param name="datFile">Parent DatFile to copy from</param>
public SoftwareList(DatFile? datFile) : base(datFile)
{
Header.Write(DatHeader.DatFormatKey, DatFormat.SoftwareList);
Header.DatFormat = DatFormat.SoftwareList;
}
/// <inheritdoc/>

View File

@@ -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;
}
/// <inheritdoc/>

View File

@@ -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;
}
}
}