using StructureHelperCommon.Infrastructures.Interfaces; using StructureHelperCommon.Models.Shapes; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DataAccess.DTOs { public class Point2DFromDTOConvertStrategy : ConvertStrategy { private IUpdateStrategy updateStrategy; public Point2DFromDTOConvertStrategy(IUpdateStrategy updateStrategy) { this.updateStrategy = updateStrategy; } public Point2DFromDTOConvertStrategy() : this (new Point2DUpdateStrategy()) { } public override Point2D GetNewItem(Point2DDTO source) { TraceLogger?.AddMessage("Point 2D converting is started"); Point2D newItem = new(source.Id); updateStrategy.Update(newItem, source); TraceLogger?.AddMessage("Point 2D converting has been finished"); return newItem; } } }