Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingPlugin.cs =================================================================== diff -u -rd3f74e71ab47dc8afda0c64ca923f2f889f4154b -r52cdf6d3134a95bad594aa61c9ef062a97b1a2ab --- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingPlugin.cs (.../PipingPlugin.cs) (revision d3f74e71ab47dc8afda0c64ca923f2f889f4154b) +++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingPlugin.cs (.../PipingPlugin.cs) (revision 52cdf6d3134a95bad594aa61c9ef062a97b1a2ab) @@ -482,20 +482,8 @@ private void OnSurfaceLineRemoved(RingtoetsPipingSurfaceLine nodeData, object parentData) { var context = (RingtoetsPipingSurfaceLinesContext) parentData; - var changedObservables = new List(); - PipingFailureMechanism failureMechanism = context.FailureMechanism; - foreach (PipingCalculationScenario pipingCalculationScenario in failureMechanism.Calculations) - { - if (ReferenceEquals(pipingCalculationScenario.InputParameters.SurfaceLine, nodeData)) - { - pipingCalculationScenario.InputParameters.SurfaceLine = null; - changedObservables.Add(pipingCalculationScenario.InputParameters); - } - } + IObservable[] changedObservables = PipingDataSynchronizationService.RemoveSurfaceLine(context.FailureMechanism, nodeData).ToArray(); - context.WrappedData.Remove(nodeData); - changedObservables.Add(context.WrappedData); - foreach (IObservable observable in changedObservables) { observable.NotifyObservers(); @@ -514,21 +502,9 @@ private void OnStochasticSoilModelRemoved(StochasticSoilModel nodeData, object parentData) { var context = (StochasticSoilModelsContext) parentData; - var changedObservables = new List(); - PipingFailureMechanism failureMechanism = context.FailureMechanism; - foreach (PipingCalculationScenario pipingCalculationScenario in failureMechanism.Calculations) - { - if (ReferenceEquals(pipingCalculationScenario.InputParameters.StochasticSoilModel, nodeData)) - { - pipingCalculationScenario.InputParameters.StochasticSoilModel = null; - pipingCalculationScenario.InputParameters.StochasticSoilProfile = null; - changedObservables.Add(pipingCalculationScenario.InputParameters); - } - } + IObservable[] changedObservables = PipingDataSynchronizationService.RemoveStochasticSoilModel(context.FailureMechanism, + nodeData).ToArray(); - context.WrappedData.Remove(nodeData); - changedObservables.Add(context.WrappedData); - foreach (IObservable observable in changedObservables) { observable.NotifyObservers();