diff --git a/SabreTools.Library/DatFiles/DatFile.cs b/SabreTools.Library/DatFiles/DatFile.cs index 7fc24aec..0672db2e 100644 --- a/SabreTools.Library/DatFiles/DatFile.cs +++ b/SabreTools.Library/DatFiles/DatFile.cs @@ -56,20 +56,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.FileName; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.FileName = value; } } @@ -77,20 +69,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Name; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Name = value; } } @@ -98,20 +82,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Description; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Description = value; } } @@ -119,20 +95,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.RootDir; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.RootDir = value; } } @@ -140,20 +108,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Category; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Category = value; } } @@ -161,20 +121,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Version; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Version = value; } } @@ -182,20 +134,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Date; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Date = value; } } @@ -203,20 +147,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Author; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Author = value; } } @@ -224,20 +160,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Email; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Email = value; } } @@ -245,20 +173,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Homepage; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Homepage = value; } } @@ -266,20 +186,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Url; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Url = value; } } @@ -287,20 +199,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Comment; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Comment = value; } } @@ -308,20 +212,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Header; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Header = value; } } @@ -329,20 +225,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Type; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Type = value; } } @@ -350,20 +238,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.ForceMerging; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.ForceMerging = value; } } @@ -371,20 +251,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.ForceNodump; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.ForceNodump = value; } } @@ -392,20 +264,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.ForcePacking; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.ForcePacking = value; } } @@ -413,20 +277,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.DatFormat; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.DatFormat = value; } } @@ -434,20 +290,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.ExcludeOf; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.ExcludeOf = value; } } @@ -455,20 +303,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.ExcludeFields; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.ExcludeFields = value; } } @@ -476,41 +316,25 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.OneRom; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - - _datHeader.ExcludeOf = value; + EnsureDatHeader(); + _datHeader.OneRom = value; } } public bool KeepEmptyGames { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.KeepEmptyGames; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.KeepEmptyGames = value; } } @@ -518,20 +342,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.SceneDateStrip; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.SceneDateStrip = value; } } @@ -539,20 +355,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.DedupeRoms; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.DedupeRoms = value; } } @@ -560,20 +368,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.StripHash; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.StripHash = value; } } @@ -591,20 +391,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Prefix; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Prefix = value; } } @@ -612,20 +404,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Postfix; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Postfix = value; } } @@ -633,20 +417,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.AddExtension; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.AddExtension = value; } } @@ -654,20 +430,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.ReplaceExtension; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.ReplaceExtension = value; } } @@ -675,20 +443,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.RemoveExtension; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.RemoveExtension = value; } } @@ -696,20 +456,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Romba; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Romba = value; } } @@ -717,20 +469,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.GameName; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.GameName = value; } } @@ -738,20 +482,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.Quotes; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.Quotes = value; } } @@ -761,20 +497,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); return _datHeader.UseRomName; } set { - if (_datHeader == null) - { - _datHeader = new DatHeader(); - } - + EnsureDatHeader(); _datHeader.UseRomName = value; } } @@ -784,20 +512,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.ReportFormat; } set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.ReportFormat = value; } } @@ -805,20 +525,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.Count; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.Count = value; } } @@ -826,20 +538,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.ArchiveCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.ArchiveCount = value; } } @@ -847,20 +551,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.BiosSetCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.BiosSetCount = value; } } @@ -868,20 +564,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.DiskCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.DiskCount = value; } } @@ -889,20 +577,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.ReleaseCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.ReleaseCount = value; } } @@ -910,20 +590,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.RomCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.RomCount = value; } } @@ -931,20 +603,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.SampleCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.SampleCount = value; } } @@ -952,20 +616,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.TotalSize; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.TotalSize = value; } } @@ -973,20 +629,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.CRCCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.CRCCount = value; } } @@ -994,20 +642,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.MD5Count; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.MD5Count = value; } } @@ -1015,20 +655,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.SHA1Count; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.SHA1Count = value; } } @@ -1036,20 +668,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.SHA256Count; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.SHA256Count = value; } } @@ -1057,20 +681,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.SHA384Count; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.SHA384Count = value; } } @@ -1078,20 +694,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.SHA512Count; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.SHA512Count = value; } } @@ -1099,20 +707,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.BaddumpCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.BaddumpCount = value; } } @@ -1120,20 +720,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.GoodCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.GoodCount = value; } } @@ -1141,20 +733,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.NodumpCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.NodumpCount = value; } } @@ -1162,20 +746,12 @@ namespace SabreTools.Library.DatFiles { get { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); return _datStats.VerifiedCount; } private set { - if (_datStats == null) - { - _datStats = new DatStats(); - } - + EnsureDatStats(); _datStats.VerifiedCount = value; } } @@ -1413,7 +989,29 @@ namespace SabreTools.Library.DatFiles Remove(key, item); } } - + + /// + /// Ensure the DatHeader + /// + private void EnsureDatHeader() + { + if (_datHeader == null) + { + _datHeader = new DatHeader(); + } + } + + /// + /// Ensure the DatStats + /// + private void EnsureDatStats() + { + if (_datStats == null) + { + _datStats = new DatStats(); + } + } + /// /// Ensure the items dictionary ///