Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs =================================================================== diff -u -r11f0867b39150ae5fac83dc178a89fee46d27611 -rb610d57f72acd9222a40ad4a3215c4f0072bfcb1 --- Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs (.../CalculationGroupEntityReadExtentions.cs) (revision 11f0867b39150ae5fac83dc178a89fee46d27611) +++ Application/Ringtoets/src/Application.Ringtoets.Storage/Read/CalculationGroupEntityReadExtentions.cs (.../CalculationGroupEntityReadExtentions.cs) (revision b610d57f72acd9222a40ad4a3215c4f0072bfcb1) @@ -46,7 +46,7 @@ /// A new . /// Thrown when /// or is null. - internal static CalculationGroup ReadPipingCalculationGroup(this CalculationGroupEntity entity, ReadConversionCollector collector, + internal static CalculationGroup ReadAsPipingCalculationGroup(this CalculationGroupEntity entity, ReadConversionCollector collector, GeneralPipingInput generalPipingInput) { if (collector == null) @@ -65,7 +65,7 @@ var childCalculationGroupEntity = childEntity as CalculationGroupEntity; if (childCalculationGroupEntity != null) { - group.Children.Add(childCalculationGroupEntity.ReadPipingCalculationGroup(collector, generalPipingInput)); + group.Children.Add(childCalculationGroupEntity.ReadAsPipingCalculationGroup(collector, generalPipingInput)); } var childCalculationEntity = childEntity as PipingCalculationEntity; if (childCalculationEntity != null) @@ -113,6 +113,37 @@ 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 ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup(this CalculationGroupEntity entity, + ReadConversionCollector collector) + { + if (collector == null) + { + throw new ArgumentNullException("collector"); + } + + var group = new CalculationGroup(entity.Name, Convert.ToBoolean(entity.IsEditable)); + + foreach (object childEntity in GetChildEntitiesInOrder(entity)) + { + var childCalculationGroupEntity = childEntity as CalculationGroupEntity; + if (childCalculationGroupEntity != null) + { + group.Children.Add(childCalculationGroupEntity.ReadAsGrassCoverErosionOutwardsWaveConditionsCalculationGroup(collector)); + } + } + + return group; + } + private static IEnumerable GetChildEntitiesInOrder(CalculationGroupEntity entity) { var sortedList = new SortedList();