Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Parsers/ReliabilityIndexCalculationParser.cs =================================================================== diff -u -r9bc5d8bc179ba0be25c9746859da3726b8b6a33e -r377ab5754aaebdd884c70b39bc44f1669d01efa8 --- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Parsers/ReliabilityIndexCalculationParser.cs (.../ReliabilityIndexCalculationParser.cs) (revision 9bc5d8bc179ba0be25c9746859da3726b8b6a33e) +++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Parsers/ReliabilityIndexCalculationParser.cs (.../ReliabilityIndexCalculationParser.cs) (revision 377ab5754aaebdd884c70b39bc44f1669d01efa8) @@ -20,9 +20,10 @@ // All rights reserved. using System; +using System.Collections.Generic; using Ringtoets.HydraRing.Calculation.Data.Output; +using Ringtoets.HydraRing.Calculation.Exceptions; using Ringtoets.HydraRing.Calculation.Properties; -using Ringtoets.HydraRing.Calculation.Readers; namespace Ringtoets.HydraRing.Calculation.Parsers { @@ -49,24 +50,33 @@ public void Parse(string workingDirectory, int sectionId) { - HydraRingDatabaseParseHelper.Parse(workingDirectory, - query, - sectionId, - Resources.ReliabilityIndexCalculationParser_Parse_No_reliability_found_in_output_file, - ReadResult); + Dictionary result = HydraRingDatabaseParseHelper.ReadSingleLine( + workingDirectory, + query, + sectionId, + Resources.ReliabilityIndexCalculationParser_Parse_No_reliability_found_in_output_file); + + ReadResult(result); } /// - /// Reads the result of the . + /// Reads the . /// - /// The reader to get the result from. - /// Thrown when the result + /// The result from the database read. + /// Thrown when the result /// cannot be converted to the output format. - private void ReadResult(HydraRingDatabaseReader reader) + private void ReadResult(IDictionary result) { - Output = new ReliabilityIndexCalculationOutput( - Convert.ToDouble(reader.ReadColumn(valueColumnName)), - Convert.ToDouble(reader.ReadColumn(betaColumnName))); + try + { + Output = new ReliabilityIndexCalculationOutput( + Convert.ToDouble(result[valueColumnName]), + Convert.ToDouble(result[betaColumnName])); + } + catch (InvalidCastException e) + { + throw new HydraRingFileParserException(Resources.ReliabilityIndexCalculationParser_Parse_No_reliability_found_in_output_file, e); + } } } } \ No newline at end of file