From 1a10e10fd6659cd5eceb6df082c38b291e5db5f1 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Sun, 5 Apr 2026 01:19:46 -0400 Subject: [PATCH] ModelBackedItem had no actual utility anymore --- SabreTools.Metadata.DatFiles/DatHeader.cs | 16 ++++++++++++-- SabreTools.Metadata.DatItems/DatItem.cs | 11 +++++++++- SabreTools.Metadata.DatItems/Machine.cs | 11 +++++++++- SabreTools.Metadata/ModelBackedItem.cs | 10 --------- SabreTools.Metadata/ModelBackedItemT.cs | 26 ----------------------- 5 files changed, 34 insertions(+), 40 deletions(-) delete mode 100644 SabreTools.Metadata/ModelBackedItem.cs delete mode 100644 SabreTools.Metadata/ModelBackedItemT.cs diff --git a/SabreTools.Metadata.DatFiles/DatHeader.cs b/SabreTools.Metadata.DatFiles/DatHeader.cs index 5f1e5280..9a9ffe06 100644 --- a/SabreTools.Metadata.DatFiles/DatHeader.cs +++ b/SabreTools.Metadata.DatFiles/DatHeader.cs @@ -12,7 +12,7 @@ namespace SabreTools.Metadata.DatFiles /// Represents all possible DAT header information /// [JsonObject("header"), XmlRoot("header")] - public sealed class DatHeader : ModelBackedItem, ICloneable, IEquatable + public sealed class DatHeader : ICloneable, IEquatable { #region Properties @@ -314,9 +314,21 @@ namespace SabreTools.Metadata.DatFiles #endregion + #region Private Fields + + /// + /// Internal model + /// + private readonly Data.Models.Metadata.Header _internal; + + #endregion + #region Constructors - public DatHeader() { } + public DatHeader() + { + _internal = new(); + } public DatHeader(Data.Models.Metadata.Header header) { diff --git a/SabreTools.Metadata.DatItems/DatItem.cs b/SabreTools.Metadata.DatItems/DatItem.cs index ee49868d..43304e38 100644 --- a/SabreTools.Metadata.DatItems/DatItem.cs +++ b/SabreTools.Metadata.DatItems/DatItem.cs @@ -53,7 +53,7 @@ namespace SabreTools.Metadata.DatItems [XmlInclude(typeof(SoftwareList))] [XmlInclude(typeof(Sound))] [XmlInclude(typeof(SourceDetails))] - public abstract class DatItem : ModelBackedItem, IEquatable, IComparable, ICloneable + public abstract class DatItem : ICloneable, IComparable, IEquatable { #region Properties @@ -84,6 +84,15 @@ namespace SabreTools.Metadata.DatItems #endregion + #region Private Fields + + /// + /// Internal model + /// + protected Data.Models.Metadata.DatItem _internal = new(); + + #endregion + #region Logging /// diff --git a/SabreTools.Metadata.DatItems/Machine.cs b/SabreTools.Metadata.DatItems/Machine.cs index 2f87a0a3..ba2b77cb 100644 --- a/SabreTools.Metadata.DatItems/Machine.cs +++ b/SabreTools.Metadata.DatItems/Machine.cs @@ -10,7 +10,7 @@ namespace SabreTools.Metadata.DatItems /// Represents the information specific to a set/game/machine /// [JsonObject("machine"), XmlRoot("machine")] - public sealed class Machine : ModelBackedItem, ICloneable, IEquatable + public sealed class Machine : ICloneable, IEquatable { #region Properties @@ -382,6 +382,15 @@ namespace SabreTools.Metadata.DatItems #endregion + #region Private Fields + + /// + /// Internal model + /// + private Data.Models.Metadata.Machine _internal; + + #endregion + #region Constructors public Machine() diff --git a/SabreTools.Metadata/ModelBackedItem.cs b/SabreTools.Metadata/ModelBackedItem.cs deleted file mode 100644 index 5737e673..00000000 --- a/SabreTools.Metadata/ModelBackedItem.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace SabreTools.Metadata -{ - /// - /// Represents an item that's backed by a constructable item - /// - public abstract class ModelBackedItem - { - // No common, untyped functionality - } -} diff --git a/SabreTools.Metadata/ModelBackedItemT.cs b/SabreTools.Metadata/ModelBackedItemT.cs deleted file mode 100644 index 0bddb5dd..00000000 --- a/SabreTools.Metadata/ModelBackedItemT.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.Xml.Serialization; -using Newtonsoft.Json; - -namespace SabreTools.Metadata -{ - /// - /// Represents an item that's backed by a constructable item - /// - public abstract class ModelBackedItem : ModelBackedItem where T : new() - { - /// - /// Internal model wrapped by this DatItem - /// - [JsonIgnore, XmlIgnore] - protected T _internal; - - #region Constructors - - public ModelBackedItem() - { - _internal = new T(); - } - - #endregion - } -}