mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Add new helper methods to DatItem
This commit is contained in:
@@ -160,6 +160,40 @@ namespace SabreTools.DatItems
|
||||
|
||||
#region Accessors
|
||||
|
||||
/// <summary>
|
||||
/// Get the value from a field based on the type provided
|
||||
/// </summary>
|
||||
/// <typeparam name="T">Type of the value to get from the internal model</typeparam>
|
||||
/// <param name="fieldName">Field to retrieve</param>
|
||||
/// <returns>Value from the field, if possible</returns>
|
||||
public T? GetFieldValue<T>(string? fieldName)
|
||||
{
|
||||
// Invalid field cannot be processed
|
||||
if (string.IsNullOrEmpty(fieldName))
|
||||
return default;
|
||||
|
||||
// Get the value based on the type
|
||||
return _internal.Read<T>(fieldName!);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the value from a field based on the type provided
|
||||
/// </summary>
|
||||
/// <typeparam name="T">Type of the value to set in the internal model</typeparam>
|
||||
/// <param name="fieldName">Field to set</param>
|
||||
/// <param name="value">Value to set</param>
|
||||
/// <returns>True if the value was set, false otherwise</returns>
|
||||
public bool SetFieldValue<T>(string? fieldName, T? value)
|
||||
{
|
||||
// Invalid field cannot be processed
|
||||
if (string.IsNullOrEmpty(fieldName))
|
||||
return false;
|
||||
|
||||
// Set the value based on the type
|
||||
_internal[fieldName!] = value;
|
||||
return true;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the name to use for a DatItem
|
||||
/// </summary>
|
||||
|
||||
@@ -55,10 +55,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Adjuster.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Adjuster.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -92,10 +92,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Archive.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Archive.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -50,10 +50,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.BiosSet.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.BiosSet.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -66,10 +66,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Chip.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Chip.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -53,10 +53,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.ConfLocation.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.ConfLocation.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -65,10 +65,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.ConfSetting.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.ConfSetting.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -88,10 +88,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Configuration.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Configuration.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -68,10 +68,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.DataArea.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.DataArea.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -27,10 +27,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.DeviceRef.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.DeviceRef.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -53,10 +53,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.DipLocation.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.DipLocation.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -114,10 +114,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.DipSwitch.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.DipSwitch.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -65,10 +65,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.DipValue.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.DipValue.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -171,10 +171,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Disk.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Disk.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -28,10 +28,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.DiskArea.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.DiskArea.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -27,10 +27,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Extension.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Extension.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -37,10 +37,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Info.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Info.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -37,10 +37,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Instance.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Instance.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -69,10 +69,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Media.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Media.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -44,10 +44,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Part.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Part.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -37,10 +37,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Feature.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Feature.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -50,10 +50,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.RamOption.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.RamOption.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -70,10 +70,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Release.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Release.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -443,10 +443,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Rom.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Rom.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -27,10 +27,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Sample.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Sample.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -37,10 +37,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.SharedFeat.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.SharedFeat.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -42,10 +42,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.Slot.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.Slot.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -50,10 +50,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.SlotOption.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.SlotOption.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -70,10 +70,10 @@ namespace SabreTools.DatItems.Formats
|
||||
#region Accessors
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override string? GetName() => Name;
|
||||
public override string? GetName() => GetFieldValue<string>(Models.Metadata.SoftwareList.NameKey);
|
||||
|
||||
/// <inheritdoc/>
|
||||
public override void SetName(string? name) => Name = name;
|
||||
public override void SetName(string? name) => SetFieldValue(Models.Metadata.SoftwareList.NameKey, name);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
Reference in New Issue
Block a user