Update strategy were changed

This commit is contained in:
Evgeny Redikultsev
2023-07-23 21:10:33 +05:00
parent 44ca05d181
commit ac079eb612
29 changed files with 39 additions and 11 deletions

View File

@@ -12,6 +12,7 @@ namespace StructureHelperLogics.Models.Materials
LibMaterialUpdateStrategy libUpdateStrategy = new LibMaterialUpdateStrategy();
public void Update(IConcreteLibMaterial targetObject, IConcreteLibMaterial sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
libUpdateStrategy.Update(targetObject, sourceObject);
targetObject.TensionForULS = sourceObject.TensionForULS;
targetObject.TensionForSLS = sourceObject.TensionForSLS;

View File

@@ -12,6 +12,7 @@ namespace StructureHelperLogics.Models.Materials
{
public void Update(IElasticMaterial targetObject, IElasticMaterial sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Modulus = sourceObject.Modulus;
targetObject.CompressiveStrength = sourceObject.CompressiveStrength;
targetObject.TensileStrength = sourceObject.TensileStrength;

View File

@@ -12,6 +12,7 @@ namespace StructureHelperLogics.Models.Materials
{
public void Update(IFRMaterial targetObject, IFRMaterial sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Modulus = sourceObject.Modulus;
targetObject.CompressiveStrength = sourceObject.CompressiveStrength;
targetObject.TensileStrength = targetObject.TensileStrength;

View File

@@ -12,10 +12,10 @@ namespace StructureHelperLogics.Models.Materials
{
public void Update(ILibMaterial targetObject, ILibMaterial sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.MaterialEntity = sourceObject.MaterialEntity;
var tmpSafetyFactors = new List<IMaterialSafetyFactor>(sourceObject.SafetyFactors);
targetObject.SafetyFactors.Clear();
foreach (var item in tmpSafetyFactors)
foreach (var item in sourceObject.SafetyFactors)
{
targetObject.SafetyFactors.Add(item.Clone() as IMaterialSafetyFactor);
}

View File

@@ -19,6 +19,7 @@ namespace StructureHelperLogics.Models.Materials
private readonly IUpdateStrategy<IReinforcementLibMaterial> reinforcementStrategy = new ReinforcementLibUpdateStrategy();
public void Update(IHeadMaterial targetObject, IHeadMaterial sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Name = sourceObject.Name;
targetObject.Color = sourceObject.Color;
targetObject.HelperMaterial = sourceObject.HelperMaterial.Clone() as IHelperMaterial;

View File

@@ -12,6 +12,7 @@ namespace StructureHelperLogics.Models.Materials
LibMaterialUpdateStrategy libUpdateStrategy = new LibMaterialUpdateStrategy();
public void Update(IReinforcementLibMaterial targetObject, IReinforcementLibMaterial sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
libUpdateStrategy.Update(targetObject, sourceObject);
}
}