mirror of
https://github.com/SabreTools/SabreTools.Serialization.git
synced 2026-09-23 07:14:57 +00:00
Flatten Condition out of existence
This commit is contained in:
@@ -152,9 +152,19 @@ namespace SabreTools.Serialization.CrossModel
|
||||
Default = item.Default,
|
||||
};
|
||||
|
||||
var condition = item.Condition;
|
||||
if (condition is not null)
|
||||
adjuster.Condition = ConvertFromInternalModel(condition);
|
||||
if (item.ConditionMask is not null
|
||||
|| item.ConditionRelation is not null
|
||||
|| item.ConditionTag is not null
|
||||
|| item.ConditionValue is not null)
|
||||
{
|
||||
adjuster.Condition = new Condition
|
||||
{
|
||||
Mask = item.ConditionMask,
|
||||
Relation = item.ConditionRelation,
|
||||
Tag = item.ConditionTag,
|
||||
Value = item.ConditionValue,
|
||||
};
|
||||
}
|
||||
|
||||
return adjuster;
|
||||
}
|
||||
@@ -201,21 +211,6 @@ namespace SabreTools.Serialization.CrossModel
|
||||
return chip;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Condition"/> to <see cref="Condition"/>
|
||||
/// </summary>
|
||||
private static Condition ConvertFromInternalModel(Data.Models.Metadata.Condition item)
|
||||
{
|
||||
var condition = new Condition
|
||||
{
|
||||
Tag = item.Tag,
|
||||
Mask = item.Mask,
|
||||
Relation = item.Relation,
|
||||
Value = item.Value,
|
||||
};
|
||||
return condition;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Models.Metadata.Configuration"/> to <see cref="Configuration"/>
|
||||
/// </summary>
|
||||
@@ -228,9 +223,19 @@ namespace SabreTools.Serialization.CrossModel
|
||||
Mask = item.Mask,
|
||||
};
|
||||
|
||||
var condition = item.Condition;
|
||||
if (condition is not null)
|
||||
configuration.Condition = ConvertFromInternalModel(condition);
|
||||
if (item.ConditionMask is not null
|
||||
|| item.ConditionRelation is not null
|
||||
|| item.ConditionTag is not null
|
||||
|| item.ConditionValue is not null)
|
||||
{
|
||||
configuration.Condition = new Condition
|
||||
{
|
||||
Mask = item.ConditionMask,
|
||||
Relation = item.ConditionRelation,
|
||||
Tag = item.ConditionTag,
|
||||
Value = item.ConditionValue,
|
||||
};
|
||||
}
|
||||
|
||||
var confLocations = item.ConfLocation;
|
||||
if (confLocations is not null && confLocations.Length > 0)
|
||||
@@ -269,9 +274,19 @@ namespace SabreTools.Serialization.CrossModel
|
||||
Default = item.Default,
|
||||
};
|
||||
|
||||
var condition = item.Condition;
|
||||
if (condition is not null)
|
||||
confSetting.Condition = ConvertFromInternalModel(condition);
|
||||
if (item.ConditionMask is not null
|
||||
|| item.ConditionRelation is not null
|
||||
|| item.ConditionTag is not null
|
||||
|| item.ConditionValue is not null)
|
||||
{
|
||||
confSetting.Condition = new Condition
|
||||
{
|
||||
Mask = item.ConditionMask,
|
||||
Relation = item.ConditionRelation,
|
||||
Tag = item.ConditionTag,
|
||||
Value = item.ConditionValue,
|
||||
};
|
||||
}
|
||||
|
||||
return confSetting;
|
||||
}
|
||||
@@ -362,9 +377,19 @@ namespace SabreTools.Serialization.CrossModel
|
||||
Mask = item.Mask,
|
||||
};
|
||||
|
||||
var condition = item.Condition;
|
||||
if (condition is not null)
|
||||
dipSwitch.Condition = ConvertFromInternalModel(condition);
|
||||
if (item.ConditionMask is not null
|
||||
|| item.ConditionRelation is not null
|
||||
|| item.ConditionTag is not null
|
||||
|| item.ConditionValue is not null)
|
||||
{
|
||||
dipSwitch.Condition = new Condition
|
||||
{
|
||||
Mask = item.ConditionMask,
|
||||
Relation = item.ConditionRelation,
|
||||
Tag = item.ConditionTag,
|
||||
Value = item.ConditionValue,
|
||||
};
|
||||
}
|
||||
|
||||
var dipLocations = item.DipLocation;
|
||||
if (dipLocations is not null && dipLocations.Length > 0)
|
||||
@@ -389,9 +414,19 @@ namespace SabreTools.Serialization.CrossModel
|
||||
Default = item.Default,
|
||||
};
|
||||
|
||||
var condition = item.Condition;
|
||||
if (condition is not null)
|
||||
dipValue.Condition = ConvertFromInternalModel(condition);
|
||||
if (item.ConditionMask is not null
|
||||
|| item.ConditionRelation is not null
|
||||
|| item.ConditionTag is not null
|
||||
|| item.ConditionValue is not null)
|
||||
{
|
||||
dipValue.Condition = new Condition
|
||||
{
|
||||
Mask = item.ConditionMask,
|
||||
Relation = item.ConditionRelation,
|
||||
Tag = item.ConditionTag,
|
||||
Value = item.ConditionValue,
|
||||
};
|
||||
}
|
||||
|
||||
return dipValue;
|
||||
}
|
||||
|
||||
@@ -128,13 +128,14 @@ namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
var adjuster = new Data.Models.Metadata.Adjuster
|
||||
{
|
||||
ConditionMask = item.Condition?.Mask,
|
||||
ConditionRelation = item.Condition?.Relation,
|
||||
ConditionTag = item.Condition?.Tag,
|
||||
ConditionValue = item.Condition?.Value,
|
||||
Name = item.Name,
|
||||
Default = item.Default,
|
||||
};
|
||||
|
||||
if (item.Condition is not null)
|
||||
adjuster.Condition = ConvertToInternalModel(item.Condition);
|
||||
|
||||
return adjuster;
|
||||
}
|
||||
|
||||
@@ -180,21 +181,6 @@ namespace SabreTools.Serialization.CrossModel
|
||||
return chip;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Condition"/> to <see cref="Models.Metadata.Condition"/>
|
||||
/// </summary>
|
||||
private static Data.Models.Metadata.Condition ConvertToInternalModel(Condition item)
|
||||
{
|
||||
var condition = new Data.Models.Metadata.Condition
|
||||
{
|
||||
Tag = item.Tag,
|
||||
Mask = item.Mask,
|
||||
Relation = item.Relation,
|
||||
Value = item.Value,
|
||||
};
|
||||
return condition;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert from <see cref="Configuration"/> to <see cref="Models.Metadata.Configuration"/>
|
||||
/// </summary>
|
||||
@@ -202,14 +188,15 @@ namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
var configuration = new Data.Models.Metadata.Configuration
|
||||
{
|
||||
ConditionMask = item.Condition?.Mask,
|
||||
ConditionRelation = item.Condition?.Relation,
|
||||
ConditionTag = item.Condition?.Tag,
|
||||
ConditionValue = item.Condition?.Value,
|
||||
Name = item.Name,
|
||||
Tag = item.Tag,
|
||||
Mask = item.Mask,
|
||||
};
|
||||
|
||||
if (item.Condition is not null)
|
||||
configuration.Condition = ConvertToInternalModel(item.Condition);
|
||||
|
||||
if (item.ConfLocation is not null && item.ConfLocation.Length > 0)
|
||||
configuration.ConfLocation = Array.ConvertAll(item.ConfLocation, ConvertToInternalModel);
|
||||
|
||||
@@ -240,14 +227,15 @@ namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
var confSetting = new Data.Models.Metadata.ConfSetting
|
||||
{
|
||||
ConditionMask = item.Condition?.Mask,
|
||||
ConditionRelation = item.Condition?.Relation,
|
||||
ConditionTag = item.Condition?.Tag,
|
||||
ConditionValue = item.Condition?.Value,
|
||||
Name = item.Name,
|
||||
Value = item.Value,
|
||||
Default = item.Default,
|
||||
};
|
||||
|
||||
if (item.Condition is not null)
|
||||
confSetting.Condition = ConvertToInternalModel(item.Condition);
|
||||
|
||||
return confSetting;
|
||||
}
|
||||
|
||||
@@ -330,14 +318,15 @@ namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
var dipSwitch = new Data.Models.Metadata.DipSwitch
|
||||
{
|
||||
ConditionMask = item.Condition?.Mask,
|
||||
ConditionRelation = item.Condition?.Relation,
|
||||
ConditionTag = item.Condition?.Tag,
|
||||
ConditionValue = item.Condition?.Value,
|
||||
Name = item.Name,
|
||||
Tag = item.Tag,
|
||||
Mask = item.Mask,
|
||||
};
|
||||
|
||||
if (item.Condition is not null)
|
||||
dipSwitch.Condition = ConvertToInternalModel(item.Condition);
|
||||
|
||||
if (item.DipLocation is not null && item.DipLocation.Length > 0)
|
||||
dipSwitch.DipLocation = Array.ConvertAll(item.DipLocation, ConvertToInternalModel);
|
||||
|
||||
@@ -354,14 +343,15 @@ namespace SabreTools.Serialization.CrossModel
|
||||
{
|
||||
var dipValue = new Data.Models.Metadata.DipValue
|
||||
{
|
||||
ConditionMask = item.Condition?.Mask,
|
||||
ConditionRelation = item.Condition?.Relation,
|
||||
ConditionTag = item.Condition?.Tag,
|
||||
ConditionValue = item.Condition?.Value,
|
||||
Name = item.Name,
|
||||
Value = item.Value,
|
||||
Default = item.Default,
|
||||
};
|
||||
|
||||
if (item.Condition is not null)
|
||||
dipValue.Condition = ConvertToInternalModel(item.Condition);
|
||||
|
||||
return dipValue;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user