Add header deserialization

This commit is contained in:
Matt Nadareski
2023-08-09 20:52:10 -04:00
parent f0ee2714c1
commit e9ae0bf635
11 changed files with 318 additions and 8 deletions

View File

@@ -13,7 +13,7 @@ namespace SabreTools.Serialization
/// <summary>
/// Convert from <cref="Models.DosCenter.DosCenter"/> to <cref="Models.Internal.Header"/>
/// </summary>
public static Models.Internal.Header ConvertHeaderFromArchiveDotOrg(Models.DosCenter.DosCenter item)
public static Models.Internal.Header ConvertHeaderFromDosCenter(Models.DosCenter.DosCenter item)
{
var header = new Models.Internal.Header
{
@@ -70,6 +70,27 @@ namespace SabreTools.Serialization
#region Deserialize
/// <summary>
/// Convert from <cref="Models.Internal.Header"/> to <cref="Models.DosCenter.DosCenter"/>
/// </summary>
public static Models.DosCenter.DosCenter? ConvertHeaderToDosCenter(Models.Internal.Header? item)
{
if (item == null)
return null;
var dosCenter = new Models.DosCenter.DosCenter
{
Name = item.ReadString(Models.Internal.Header.NameKey),
Description = item.ReadString(Models.Internal.Header.DescriptionKey),
Version = item.ReadString(Models.Internal.Header.VersionKey),
Date = item.ReadString(Models.Internal.Header.DateKey),
Author = item.ReadString(Models.Internal.Header.AuthorKey),
Homepage = item.ReadString(Models.Internal.Header.HomepageKey),
Comment = item.ReadString(Models.Internal.Header.CommentKey),
};
return dosCenter;
}
/// <summary>
/// Convert from <cref="Models.Internal.Machine"/> to <cref="Models.DosCenter.Game"/>
/// </summary>