mirror of
https://github.com/SabreTools/SabreTools.Serialization.git
synced 2026-04-19 04:33:17 +00:00
Convert last long key to property
This commit is contained in:
@@ -319,6 +319,7 @@ namespace SabreTools.Data.Extensions
|
||||
else if (self is Rom selfRom && clone is Rom cloneRom)
|
||||
{
|
||||
cloneRom.Dispose = selfRom.Dispose;
|
||||
cloneRom.FileCount = selfRom.FileCount;
|
||||
cloneRom.FileIsAvailable = selfRom.FileIsAvailable;
|
||||
cloneRom.Inverted = selfRom.Inverted;
|
||||
cloneRom.LoadFlag = selfRom.LoadFlag;
|
||||
|
||||
@@ -33,7 +33,7 @@ namespace SabreTools.Data.Models.ArchiveDotOrg
|
||||
public string? SHA1 { get; set; }
|
||||
|
||||
[XmlElement("filecount")]
|
||||
public string? FileCount { get; set; }
|
||||
public long? FileCount { get; set; }
|
||||
|
||||
/// <remarks>Is this a set of defined values?</remarks>
|
||||
[XmlElement("format")]
|
||||
|
||||
@@ -31,6 +31,7 @@ namespace SabreTools.Data.Models.Metadata
|
||||
/// <summary>
|
||||
/// Read a key as a bool, returning null on error
|
||||
/// </summary>
|
||||
/// TODO: Determine if this can be removed
|
||||
public bool? ReadBool(string key)
|
||||
{
|
||||
if (!ValidateReadKey(key))
|
||||
@@ -52,6 +53,7 @@ namespace SabreTools.Data.Models.Metadata
|
||||
/// <summary>
|
||||
/// Read a key as a double, returning null on error
|
||||
/// </summary>
|
||||
/// TODO: Determine if this can be removed
|
||||
public double? ReadDouble(string key)
|
||||
{
|
||||
if (!ValidateReadKey(key))
|
||||
@@ -82,6 +84,7 @@ namespace SabreTools.Data.Models.Metadata
|
||||
/// Read a key as a long, returning null on error
|
||||
/// </summary>
|
||||
/// <remarks>TODO: Add logic to convert SI suffixes and hex</remarks>
|
||||
/// TODO: Determine if this can be removed
|
||||
public long? ReadLong(string key)
|
||||
{
|
||||
if (!ValidateReadKey(key))
|
||||
|
||||
@@ -11,6 +11,9 @@ namespace SabreTools.Data.Models.Metadata
|
||||
/// <remarks>(yes|no) "no"</remarks>
|
||||
public bool? Dispose { get; set; }
|
||||
|
||||
/// <remarks>ArchiveDotOrg.File</remarks>
|
||||
public long? FileCount { get; set; }
|
||||
|
||||
/// <remarks>bool; AttractMode.Row</remarks>
|
||||
public bool? FileIsAvailable { get; set; }
|
||||
|
||||
@@ -102,9 +105,6 @@ namespace SabreTools.Data.Models.Metadata
|
||||
/// <remarks>string; OfflineList.FileRomCRC</remarks>
|
||||
public const string ExtensionKey = "extension";
|
||||
|
||||
/// <remarks>long; ArchiveDotOrg.File</remarks>
|
||||
public const string FileCountKey = "filecount";
|
||||
|
||||
/// <remarks>string</remarks>
|
||||
public const string FlagsKey = "flags";
|
||||
|
||||
|
||||
@@ -792,7 +792,7 @@ namespace SabreTools.Metadata.DatFiles.Test
|
||||
[Data.Models.Metadata.Rom.DateKey] = "date",
|
||||
Dispose = true,
|
||||
[Data.Models.Metadata.Rom.ExtensionKey] = "extension",
|
||||
[Data.Models.Metadata.Rom.FileCountKey] = 12345L,
|
||||
FileCount = 12345,
|
||||
FileIsAvailable = true,
|
||||
[Data.Models.Metadata.Rom.FlagsKey] = "flags",
|
||||
[Data.Models.Metadata.Rom.FormatKey] = "format",
|
||||
@@ -1494,7 +1494,7 @@ namespace SabreTools.Metadata.DatFiles.Test
|
||||
Assert.Equal("date", rom.ReadString(Data.Models.Metadata.Rom.DateKey));
|
||||
Assert.True(rom.Dispose);
|
||||
Assert.Equal("extension", rom.ReadString(Data.Models.Metadata.Rom.ExtensionKey));
|
||||
Assert.Equal(12345L, rom.ReadLong(Data.Models.Metadata.Rom.FileCountKey));
|
||||
Assert.Equal(12345, rom.FileCount);
|
||||
Assert.True(rom.FileIsAvailable);
|
||||
Assert.Equal("flags", rom.ReadString(Data.Models.Metadata.Rom.FlagsKey));
|
||||
Assert.Equal("format", rom.ReadString(Data.Models.Metadata.Rom.FormatKey));
|
||||
|
||||
@@ -1057,7 +1057,7 @@ namespace SabreTools.Metadata.DatFiles.Test
|
||||
Assert.Equal("date", rom.ReadString(Data.Models.Metadata.Rom.DateKey));
|
||||
Assert.True(rom.Dispose);
|
||||
Assert.Equal("extension", rom.ReadString(Data.Models.Metadata.Rom.ExtensionKey));
|
||||
Assert.Equal(12345, rom.ReadLong(Data.Models.Metadata.Rom.FileCountKey));
|
||||
Assert.Equal(12345, rom.FileCount);
|
||||
Assert.True(rom.FileIsAvailable);
|
||||
Assert.Equal("flags", rom.ReadString(Data.Models.Metadata.Rom.FlagsKey));
|
||||
Assert.Equal("format", rom.ReadString(Data.Models.Metadata.Rom.FormatKey));
|
||||
|
||||
@@ -48,6 +48,12 @@ namespace SabreTools.Metadata.DatItems.Formats
|
||||
set => (_internal as Data.Models.Metadata.Rom)?.Dispose = value;
|
||||
}
|
||||
|
||||
public long? FileCount
|
||||
{
|
||||
get => (_internal as Data.Models.Metadata.Rom)?.FileCount;
|
||||
set => (_internal as Data.Models.Metadata.Rom)?.FileCount = value;
|
||||
}
|
||||
|
||||
public bool? FileIsAvailable
|
||||
{
|
||||
get => (_internal as Data.Models.Metadata.Rom)?.FileIsAvailable;
|
||||
|
||||
@@ -790,6 +790,9 @@ namespace SabreTools.Metadata.Filter
|
||||
case Rom item when fieldName == "dispose":
|
||||
checkValue = item.Dispose.FromYesNo();
|
||||
return true;
|
||||
case Rom item when fieldName == "filecount":
|
||||
checkValue = item.FileCount?.ToString();
|
||||
return true;
|
||||
case Rom item when fieldName == "fileisavailable":
|
||||
checkValue = item.FileIsAvailable.FromYesNo();
|
||||
return true;
|
||||
|
||||
@@ -58,6 +58,7 @@ namespace SabreTools.Metadata
|
||||
/// </summary>
|
||||
/// <param name="fieldName">Field to retrieve</param>
|
||||
/// <returns>Value from the field, if possible</returns>
|
||||
/// TODO: Determine if this can be removed
|
||||
public long? ReadLong(string fieldName)
|
||||
=> _internal.ReadLong(fieldName);
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ namespace SabreTools.Serialization.CrossModel.Test
|
||||
MD5 = "XXXXXX",
|
||||
CRC32 = "XXXXXX",
|
||||
SHA1 = "XXXXXX",
|
||||
FileCount = "XXXXXX",
|
||||
FileCount = 12345,
|
||||
Format = "XXXXXX",
|
||||
Original = "XXXXXX",
|
||||
Summation = "XXXXXX",
|
||||
@@ -116,7 +116,7 @@ namespace SabreTools.Serialization.CrossModel.Test
|
||||
Assert.Equal("XXXXXX", file.MD5);
|
||||
Assert.Equal("XXXXXX", file.CRC32);
|
||||
Assert.Equal("XXXXXX", file.SHA1);
|
||||
Assert.Equal("XXXXXX", file.FileCount);
|
||||
Assert.Equal(12345, file.FileCount);
|
||||
Assert.Equal("XXXXXX", file.Format);
|
||||
Assert.Equal("XXXXXX", file.Original);
|
||||
Assert.Equal("XXXXXX", file.Summation);
|
||||
|
||||
@@ -52,7 +52,7 @@ namespace SabreTools.Serialization.CrossModel
|
||||
MD5 = item.ReadString(Data.Models.Metadata.Rom.MD5Key),
|
||||
CRC32 = item.ReadString(Data.Models.Metadata.Rom.CRCKey),
|
||||
SHA1 = item.ReadString(Data.Models.Metadata.Rom.SHA1Key),
|
||||
FileCount = item.ReadString(Data.Models.Metadata.Rom.FileCountKey),
|
||||
FileCount = item.FileCount,
|
||||
Format = item.ReadString(Data.Models.Metadata.Rom.FormatKey),
|
||||
Original = item.ReadString(Data.Models.Metadata.Rom.OriginalKey),
|
||||
Summation = item.ReadString(Data.Models.Metadata.Rom.SummationKey),
|
||||
|
||||
@@ -70,7 +70,7 @@ namespace SabreTools.Serialization.CrossModel
|
||||
[Data.Models.Metadata.Rom.MD5Key] = item.MD5,
|
||||
[Data.Models.Metadata.Rom.CRCKey] = item.CRC32,
|
||||
[Data.Models.Metadata.Rom.SHA1Key] = item.SHA1,
|
||||
[Data.Models.Metadata.Rom.FileCountKey] = item.FileCount,
|
||||
FileCount = item.FileCount,
|
||||
[Data.Models.Metadata.Rom.FormatKey] = item.Format,
|
||||
[Data.Models.Metadata.Rom.OriginalKey] = item.Original,
|
||||
[Data.Models.Metadata.Rom.SummationKey] = item.Summation,
|
||||
|
||||
@@ -108,7 +108,7 @@ namespace SabreTools.Serialization.Readers.Test
|
||||
MD5 = "XXXXXX",
|
||||
CRC32 = "XXXXXX",
|
||||
SHA1 = "XXXXXX",
|
||||
FileCount = "XXXXXX",
|
||||
FileCount = 12345,
|
||||
Format = "XXXXXX",
|
||||
Original = "XXXXXX",
|
||||
Summation = "XXXXXX",
|
||||
@@ -182,7 +182,7 @@ namespace SabreTools.Serialization.Readers.Test
|
||||
Assert.Equal("XXXXXX", file.MD5);
|
||||
Assert.Equal("XXXXXX", file.CRC32);
|
||||
Assert.Equal("XXXXXX", file.SHA1);
|
||||
Assert.Equal("XXXXXX", file.FileCount);
|
||||
Assert.Equal(12345, file.FileCount);
|
||||
Assert.Equal("XXXXXX", file.Format);
|
||||
Assert.Equal("XXXXXX", file.Original);
|
||||
Assert.Equal("XXXXXX", file.Summation);
|
||||
|
||||
@@ -2,6 +2,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Xml;
|
||||
using SabreTools.Data.Models.ArchiveDotOrg;
|
||||
using SabreTools.Text.Extensions;
|
||||
|
||||
namespace SabreTools.Serialization.Readers
|
||||
{
|
||||
@@ -136,7 +137,7 @@ namespace SabreTools.Serialization.Readers
|
||||
obj.SHA1 = reader.ReadElementContentAsString();
|
||||
break;
|
||||
case "filecount":
|
||||
obj.FileCount = reader.ReadElementContentAsString();
|
||||
obj.FileCount = NumberHelper.ConvertToInt64(reader.ReadElementContentAsString());
|
||||
break;
|
||||
case "format":
|
||||
obj.Format = reader.ReadElementContentAsString();
|
||||
|
||||
@@ -57,7 +57,7 @@ namespace SabreTools.Serialization.Writers
|
||||
writer.WriteOptionalElementString("md5", obj.MD5);
|
||||
writer.WriteOptionalElementString("crc32", obj.CRC32);
|
||||
writer.WriteOptionalElementString("sha1", obj.SHA1);
|
||||
writer.WriteOptionalElementString("filecount", obj.FileCount);
|
||||
writer.WriteOptionalElementString("filecount", obj.FileCount?.ToString());
|
||||
writer.WriteOptionalElementString("format", obj.Format);
|
||||
writer.WriteOptionalElementString("original", obj.Original);
|
||||
writer.WriteOptionalElementString("summation", obj.Summation);
|
||||
|
||||
Reference in New Issue
Block a user