Index: Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Service/GrassCoverErosionOutwardsDataSynchronizationService.cs
===================================================================
diff -u -r716528adfed212743b359ecaf540a1027dbceb65 -rc964c048005d93b097a1e6a817dace95b293040f
--- Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Service/GrassCoverErosionOutwardsDataSynchronizationService.cs (.../GrassCoverErosionOutwardsDataSynchronizationService.cs) (revision 716528adfed212743b359ecaf540a1027dbceb65)
+++ Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Service/GrassCoverErosionOutwardsDataSynchronizationService.cs (.../GrassCoverErosionOutwardsDataSynchronizationService.cs) (revision c964c048005d93b097a1e6a817dace95b293040f)
@@ -153,6 +153,34 @@
return affectedItems;
}
+ ///
+ /// Clears all data dependent, either directly or indirectly, on the parent reference line.
+ ///
+ /// The failure mechanism to be cleared.
+ /// All objects that have been changed.
+ /// Thrown when
+ /// is null.
+ public static IEnumerable ClearReferenceLineDependentData(GrassCoverErosionOutwardsFailureMechanism failureMechanism)
+ {
+ if (failureMechanism == null)
+ {
+ throw new ArgumentNullException("failureMechanism");
+ }
+
+ var observables = new List();
+
+ failureMechanism.ClearAllSections();
+ observables.Add(failureMechanism);
+
+ failureMechanism.WaveConditionsCalculationGroup.Children.Clear();
+ observables.Add(failureMechanism.WaveConditionsCalculationGroup);
+
+ failureMechanism.ForeshoreProfiles.Clear();
+ observables.Add(failureMechanism.ForeshoreProfiles);
+
+ return observables;
+ }
+
private static void ClearHydraulicBoundaryLocation(GrassCoverErosionOutwardsWaveConditionsCalculation calculation)
{
calculation.InputParameters.HydraulicBoundaryLocation = null;