mirror of
https://github.com/SabreTools/SabreTools.Serialization.git
synced 2026-04-25 15:49:51 +00:00
ModelBackedItem had no actual utility anymore
This commit is contained in:
@@ -12,7 +12,7 @@ namespace SabreTools.Metadata.DatFiles
|
||||
/// Represents all possible DAT header information
|
||||
/// </summary>
|
||||
[JsonObject("header"), XmlRoot("header")]
|
||||
public sealed class DatHeader : ModelBackedItem<Data.Models.Metadata.Header>, ICloneable, IEquatable<DatHeader>
|
||||
public sealed class DatHeader : ICloneable, IEquatable<DatHeader>
|
||||
{
|
||||
#region Properties
|
||||
|
||||
@@ -314,9 +314,21 @@ namespace SabreTools.Metadata.DatFiles
|
||||
|
||||
#endregion
|
||||
|
||||
#region Private Fields
|
||||
|
||||
/// <summary>
|
||||
/// Internal model
|
||||
/// </summary>
|
||||
private readonly Data.Models.Metadata.Header _internal;
|
||||
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
|
||||
public DatHeader() { }
|
||||
public DatHeader()
|
||||
{
|
||||
_internal = new();
|
||||
}
|
||||
|
||||
public DatHeader(Data.Models.Metadata.Header header)
|
||||
{
|
||||
|
||||
@@ -53,7 +53,7 @@ namespace SabreTools.Metadata.DatItems
|
||||
[XmlInclude(typeof(SoftwareList))]
|
||||
[XmlInclude(typeof(Sound))]
|
||||
[XmlInclude(typeof(SourceDetails))]
|
||||
public abstract class DatItem : ModelBackedItem<Data.Models.Metadata.DatItem>, IEquatable<DatItem>, IComparable<DatItem>, ICloneable
|
||||
public abstract class DatItem : ICloneable, IComparable<DatItem>, IEquatable<DatItem>
|
||||
{
|
||||
#region Properties
|
||||
|
||||
@@ -84,6 +84,15 @@ namespace SabreTools.Metadata.DatItems
|
||||
|
||||
#endregion
|
||||
|
||||
#region Private Fields
|
||||
|
||||
/// <summary>
|
||||
/// Internal model
|
||||
/// </summary>
|
||||
protected Data.Models.Metadata.DatItem _internal = new();
|
||||
|
||||
#endregion
|
||||
|
||||
#region Logging
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -10,7 +10,7 @@ namespace SabreTools.Metadata.DatItems
|
||||
/// Represents the information specific to a set/game/machine
|
||||
/// </summary>
|
||||
[JsonObject("machine"), XmlRoot("machine")]
|
||||
public sealed class Machine : ModelBackedItem<Data.Models.Metadata.Machine>, ICloneable, IEquatable<Machine>
|
||||
public sealed class Machine : ICloneable, IEquatable<Machine>
|
||||
{
|
||||
#region Properties
|
||||
|
||||
@@ -382,6 +382,15 @@ namespace SabreTools.Metadata.DatItems
|
||||
|
||||
#endregion
|
||||
|
||||
#region Private Fields
|
||||
|
||||
/// <summary>
|
||||
/// Internal model
|
||||
/// </summary>
|
||||
private Data.Models.Metadata.Machine _internal;
|
||||
|
||||
#endregion
|
||||
|
||||
#region Constructors
|
||||
|
||||
public Machine()
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
namespace SabreTools.Metadata
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents an item that's backed by a constructable item
|
||||
/// </summary>
|
||||
public abstract class ModelBackedItem
|
||||
{
|
||||
// No common, untyped functionality
|
||||
}
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
using System.Xml.Serialization;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace SabreTools.Metadata
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents an item that's backed by a constructable item
|
||||
/// </summary>
|
||||
public abstract class ModelBackedItem<T> : ModelBackedItem where T : new()
|
||||
{
|
||||
/// <summary>
|
||||
/// Internal model wrapped by this DatItem
|
||||
/// </summary>
|
||||
[JsonIgnore, XmlIgnore]
|
||||
protected T _internal;
|
||||
|
||||
#region Constructors
|
||||
|
||||
public ModelBackedItem()
|
||||
{
|
||||
_internal = new T();
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user