Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs =================================================================== diff -u -r09ce09eed0c1ff15dfbbbf045f63f1283565c685 -rdd8e88b95bba050bd07df08907e03b88673e433c --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs (.../HeightStructuresGuiPlugin.cs) (revision 09ce09eed0c1ff15dfbbbf045f63f1283565c685) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs (.../HeightStructuresGuiPlugin.cs) (revision dd8e88b95bba050bd07df08907e03b88673e433c) @@ -19,6 +19,7 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System; using System.Collections; using System.Collections.Generic; using System.IO; @@ -42,6 +43,7 @@ using Ringtoets.HydraRing.Calculation.Activities; using Ringtoets.HydraRing.Calculation.Data; using Ringtoets.HydraRing.Calculation.Data.Input.Structures; +using Ringtoets.HydraRing.Calculation.Data.Output; using Ringtoets.HydraRing.IO; using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources; using RingtoetsCommonDataResources = Ringtoets.Common.Data.Properties.Resources; @@ -164,7 +166,7 @@ inputParameters.DeviationOfTheWaveDirection, inputParameters.StormDuration.Mean, inputParameters.StormDuration.StandardDeviation), calculation.ClearOutput, - output => { }); + output => { ParseHydraRingOutput(calculation, output); }); } private void CalculateAll(HeightStructuresFailureMechanism failureMechanism, IEnumerable calculations, IAssessmentSection assessmentSection) @@ -189,9 +191,7 @@ return Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported; } - string selectedFile = assessmentSection.HydraulicBoundaryDatabase.FilePath; - var validationProblem = HydraulicDatabaseHelper.ValidatePathForCalculation(selectedFile); - + var validationProblem = HydraulicDatabaseHelper.ValidatePathForCalculation(assessmentSection.HydraulicBoundaryDatabase.FilePath); if (!string.IsNullOrEmpty(validationProblem)) { return string.Format(RingtoetsCommonFormsResources.GuiPlugin_VerifyHydraulicBoundaryDatabasePath_Hydraulic_boundary_database_connection_failed_0_, validationProblem); @@ -200,6 +200,18 @@ return null; } + private static void ParseHydraRingOutput(HeightStructuresCalculation calculation, ExceedanceProbabilityCalculationOutput output) + { + if (output != null) + { + calculation.NotifyObservers(); + } + else + { + throw new InvalidOperationException(Resources.HeightStructuresGuiPlugin_Error_during_overtopping_calculation); + } + } + #region EmptyProbabilisticOutput TreeNodeInfo private ContextMenuStrip EmptyProbabilisticOutputContextMenuStrip(EmptyProbabilisticOutput output, object parentData, TreeViewControl treeViewControl)