Files
StructureHelper/StructureHelperCommon/Models/Forces/Logics/ForceCombinationListUpdateStrategy.cs
Evgeny Redikultsev 7e54aa0407 Add Force DTOs
2024-10-12 21:30:21 +05:00

38 lines
1.3 KiB
C#

using StructureHelperCommon.Infrastructures.Interfaces;
using StructureHelperCommon.Models.Forces.Logics;
using StructureHelperCommon.Services;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace StructureHelperCommon.Models.Forces
{
public class ForceCombinationListUpdateStrategy : IUpdateStrategy<IForceCombinationList>
{
private IUpdateStrategy<IDesignForceTuple> designForceTupleUpdateStrategy;
public ForceCombinationListUpdateStrategy(IUpdateStrategy<IDesignForceTuple> designForceTupleUpdateStrategy)
{
this.designForceTupleUpdateStrategy = designForceTupleUpdateStrategy;
}
public ForceCombinationListUpdateStrategy() : this (new DesignForceTupleUpdateStrategy())
{
}
public void Update(IForceCombinationList targetObject, IForceCombinationList sourceObject)
{
CheckObject.IsNull(targetObject, sourceObject);
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.DesignForces.Clear();
foreach (var item in sourceObject.DesignForces)
{
targetObject.DesignForces.Add((IDesignForceTuple)item.Clone());
}
}
}
}