Add Xbox string serialization

This commit is contained in:
Matt Nadareski
2023-10-24 23:24:17 -04:00
parent 83450f693f
commit e5fe0a71ef
2 changed files with 38 additions and 6 deletions

View File

@@ -1,4 +1,4 @@
using System;
using System.Text;
using SabreTools.Serialization.Interfaces;
namespace SabreTools.Serialization.Strings
@@ -7,9 +7,22 @@ namespace SabreTools.Serialization.Strings
{
/// <inheritdoc/>
#if NET48
public string Serialize(Models.Xbox.XMID obj) => throw new NotImplementedException();
public string Serialize(Models.Xbox.XMID obj)
#else
public string? Serialize(Models.Xbox.XMID? obj) => throw new NotImplementedException();
public string? Serialize(Models.Xbox.XMID? obj)
#endif
{
if (obj == null)
return null;
var sb = new StringBuilder();
sb.Append(obj.PublisherIdentifier);
sb.Append(obj.GameID);
sb.Append(obj.VersionNumber);
sb.Append(obj.RegionIdentifier);
return sb.ToString();
}
}
}

View File

@@ -1,4 +1,4 @@
using System;
using System.Text;
using SabreTools.Serialization.Interfaces;
namespace SabreTools.Serialization.Strings
@@ -7,9 +7,28 @@ namespace SabreTools.Serialization.Strings
{
/// <inheritdoc/>
#if NET48
public string Serialize(Models.Xbox.XeMID obj) => throw new NotImplementedException();
public string Serialize(Models.Xbox.XeMID obj)
#else
public string? Serialize(Models.Xbox.XeMID? obj) => throw new NotImplementedException();
public string? Serialize(Models.Xbox.XeMID? obj)
#endif
{
if (obj == null)
return null;
var sb = new StringBuilder();
sb.Append(obj.PublisherIdentifier);
sb.Append(obj.PlatformIdentifier);
sb.Append(obj.GameID);
sb.Append(obj.SKU);
sb.Append(obj.RegionIdentifier);
sb.Append(obj.BaseVersion);
sb.Append(obj.MediaSubtypeIdentifier);
sb.Append(obj.DiscNumberIdentifier);
if (!string.IsNullOrWhiteSpace(obj.CertificationSubmissionIdentifier))
sb.Append(obj.CertificationSubmissionIdentifier);
return sb.ToString();
}
}
}