Index: Riskeer/Piping/src/Riskeer.Piping.IO/Configurations/PipingCalculationConfigurationExporter.cs =================================================================== diff -u -rdf1942940ece42a98d022f8c4a8bd873274462fc -r732c5a8e5396d0e7e7b9182286329e81bec0c583 --- Riskeer/Piping/src/Riskeer.Piping.IO/Configurations/PipingCalculationConfigurationExporter.cs (.../PipingCalculationConfigurationExporter.cs) (revision df1942940ece42a98d022f8c4a8bd873274462fc) +++ Riskeer/Piping/src/Riskeer.Piping.IO/Configurations/PipingCalculationConfigurationExporter.cs (.../PipingCalculationConfigurationExporter.cs) (revision 732c5a8e5396d0e7e7b9182286329e81bec0c583) @@ -24,6 +24,7 @@ using Riskeer.Common.Data.Calculation; using Riskeer.Common.IO.Configurations.Export; using Riskeer.Common.IO.Configurations.Helpers; +using Riskeer.Piping.Data; using Riskeer.Piping.Data.SemiProbabilistic; namespace Riskeer.Piping.IO.Configurations @@ -34,7 +35,7 @@ public class PipingCalculationConfigurationExporter : CalculationConfigurationExporter< PipingCalculationConfigurationWriter, - SemiProbabilisticPipingCalculationScenario, + IPipingCalculationScenario, PipingCalculationConfiguration> { /// @@ -47,9 +48,9 @@ public PipingCalculationConfigurationExporter(IEnumerable calculations, string filePath) : base(calculations, new PipingCalculationConfigurationWriter(filePath)) {} - protected override PipingCalculationConfiguration ToConfiguration(SemiProbabilisticPipingCalculationScenario calculation) + protected override PipingCalculationConfiguration ToConfiguration(IPipingCalculationScenario calculation) { - SemiProbabilisticPipingInput input = calculation.InputParameters; + PipingInput input = calculation.InputParameters; var calculationConfiguration = new PipingCalculationConfiguration(calculation.Name) { @@ -58,15 +59,6 @@ Scenario = calculation.ToScenarioConfiguration() }; - if (input.UseAssessmentLevelManualInput) - { - calculationConfiguration.AssessmentLevel = input.AssessmentLevel; - } - else if (input.HydraulicBoundaryLocation != null) - { - calculationConfiguration.HydraulicBoundaryLocationName = input.HydraulicBoundaryLocation.Name; - } - if (input.SurfaceLine != null) { calculationConfiguration.SurfaceLineName = input.SurfaceLine.Name; @@ -79,8 +71,27 @@ calculationConfiguration.StochasticSoilModelName = input.StochasticSoilModel.Name; calculationConfiguration.StochasticSoilProfileName = input.StochasticSoilProfile?.SoilProfile.Name; } + + if (calculation is SemiProbabilisticPipingCalculationScenario semiProbabilisticPipingCalculation) + { + ToSemiProbabilisticConfiguration(calculationConfiguration, semiProbabilisticPipingCalculation); + } return calculationConfiguration; } + + private static void ToSemiProbabilisticConfiguration(PipingCalculationConfiguration calculationConfiguration, + SemiProbabilisticPipingCalculationScenario calculation) + { + SemiProbabilisticPipingInput input = calculation.InputParameters; + if (input.UseAssessmentLevelManualInput) + { + calculationConfiguration.AssessmentLevel = input.AssessmentLevel; + } + else if (input.HydraulicBoundaryLocation != null) + { + calculationConfiguration.HydraulicBoundaryLocationName = input.HydraulicBoundaryLocation.Name; + } + } } } \ No newline at end of file Index: Riskeer/Piping/test/Riskeer.Piping.IO.Test/Configurations/PipingCalculationConfigurationExporterTest.cs =================================================================== diff -u -rba41bd90ce9fb5bc8fa6a0b81257a33b65ea7ab5 -r732c5a8e5396d0e7e7b9182286329e81bec0c583 --- Riskeer/Piping/test/Riskeer.Piping.IO.Test/Configurations/PipingCalculationConfigurationExporterTest.cs (.../PipingCalculationConfigurationExporterTest.cs) (revision ba41bd90ce9fb5bc8fa6a0b81257a33b65ea7ab5) +++ Riskeer/Piping/test/Riskeer.Piping.IO.Test/Configurations/PipingCalculationConfigurationExporterTest.cs (.../PipingCalculationConfigurationExporterTest.cs) (revision 732c5a8e5396d0e7e7b9182286329e81bec0c583) @@ -25,6 +25,7 @@ using NUnit.Framework; using Riskeer.Common.Data.Calculation; using Riskeer.Common.IO.TestUtil; +using Riskeer.Piping.Data; using Riskeer.Piping.Data.SemiProbabilistic; using Riskeer.Piping.Data.TestUtil; using Riskeer.Piping.IO.Configurations; @@ -36,7 +37,7 @@ : CustomCalculationConfigurationExporterDesignGuidelinesTestFixture< PipingCalculationConfigurationExporter, PipingCalculationConfigurationWriter, - SemiProbabilisticPipingCalculationScenario, + IPipingCalculationScenario, PipingCalculationConfiguration> { private static IEnumerable Calculations @@ -108,7 +109,7 @@ }, expectedXmlFilePath); } - protected override SemiProbabilisticPipingCalculationScenario CreateCalculation() + protected override IPipingCalculationScenario CreateCalculation() { return new SemiProbabilisticPipingCalculationScenario(); }