Index: Riskeer/DuneErosion/src/Riskeer.DuneErosion.Service/DuneErosionDataSynchronizationService.cs =================================================================== diff -u -r6c311caef5e49401eabeb899b36d635775aab1fe -r579d646c8bae668bd48a2dcc0b0e1831031c6c13 --- Riskeer/DuneErosion/src/Riskeer.DuneErosion.Service/DuneErosionDataSynchronizationService.cs (.../DuneErosionDataSynchronizationService.cs) (revision 6c311caef5e49401eabeb899b36d635775aab1fe) +++ Riskeer/DuneErosion/src/Riskeer.DuneErosion.Service/DuneErosionDataSynchronizationService.cs (.../DuneErosionDataSynchronizationService.cs) (revision 579d646c8bae668bd48a2dcc0b0e1831031c6c13) @@ -117,16 +117,27 @@ foreach (DuneLocationCalculationsForTargetProbability calculationsForTargetProbability in failureMechanism.DuneLocationCalculationsForUserDefinedTargetProbabilities) { - affectedCalculations.AddRange(ClearDuneLocationCalculationsOutput(calculationsForTargetProbability)); + affectedCalculations.AddRange(ClearDuneLocationCalculationsOutput(calculationsForTargetProbability.DuneLocationCalculations)); } return affectedCalculations; } - private static IEnumerable ClearDuneLocationCalculationsOutput(DuneLocationCalculationsForTargetProbability calculationsForTargetProbability) + /// + /// Clears the output of the provided dune location calculations. + /// + /// The calculations for which the output needs to be cleared. + /// All objects changed during the clear. + /// Thrown when is null. + public static IEnumerable ClearDuneLocationCalculationsOutput(IEnumerable calculations) { - IEnumerable affectedCalculations = calculationsForTargetProbability.DuneLocationCalculations.Where(c => c.Output != null).ToArray(); + if (calculations == null) + { + throw new ArgumentNullException(nameof(calculations)); + } + IEnumerable affectedCalculations = calculations.Where(c => c.Output != null).ToArray(); + affectedCalculations.ForEachElementDo(c => c.Output = null); return affectedCalculations;