Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs =================================================================== diff -u -rd3eaf9dfba5fcc97f9a4b2e901e37ea83387bac2 -r811967790aed0c6617f36c2135016a5bc4aa8fcc --- Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs (.../CalculationGroupEntityReadExtentions.cs) (revision d3eaf9dfba5fcc97f9a4b2e901e37ea83387bac2) +++ Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs (.../CalculationGroupEntityReadExtentions.cs) (revision 811967790aed0c6617f36c2135016a5bc4aa8fcc) @@ -22,6 +22,7 @@ using System; using System.Collections; using Application.Ringtoets.Storage.DbContext; +using Application.Ringtoets.Storage.Read.ClosingStructures; using Application.Ringtoets.Storage.Read.GrassCoverErosionInwards; using Application.Ringtoets.Storage.Read.GrassCoverErosionOutwards; using Application.Ringtoets.Storage.Read.HeightStructures; @@ -198,6 +199,42 @@ /// The object keeping track of read operations. /// A new . /// Thrown when is null. + internal static CalculationGroup ReadAsClosingStructuresCalculationGroup(this CalculationGroupEntity entity, + ReadConversionCollector collector) + { + if (collector == null) + { + throw new ArgumentNullException("collector"); + } + + var group = new CalculationGroup(entity.Name, true); + + foreach (object childEntity in GetChildEntitiesInOrder(entity)) + { + var childCalculationGroupEntity = childEntity as CalculationGroupEntity; + if (childCalculationGroupEntity != null) + { + group.Children.Add(childCalculationGroupEntity.ReadAsClosingStructuresCalculationGroup(collector)); + } + var childCalculationEntity = childEntity as ClosingStructuresCalculationEntity; + if (childCalculationEntity != null) + { + group.Children.Add(childCalculationEntity.Read(collector)); + } + } + + return group; + } + + /// + /// Read the and use the information to construct + /// a . + /// + /// The to create + /// for. + /// The object keeping track of read operations. + /// A new . + /// Thrown when is null. internal static CalculationGroup ReadAsStabilityStoneCoverWaveConditionsCalculationGroup(this CalculationGroupEntity entity, ReadConversionCollector collector) { @@ -284,6 +321,10 @@ { sortedList.Add(calculationEntity.Order, calculationEntity); } + foreach (ClosingStructuresCalculationEntity calculationEntity in entity.ClosingStructuresCalculationEntities) + { + sortedList.Add(calculationEntity.Order, calculationEntity); + } foreach (StabilityStoneCoverWaveConditionsCalculationEntity calculationEntity in entity.StabilityStoneCoverWaveConditionsCalculationEntities) { sortedList.Add(calculationEntity.Order, calculationEntity);