Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationExporter.cs
===================================================================
diff -u -rf03b47d0d73983de35188874a094ae07f1ea13fa -r5a34759978bfb0c2982463f8f8c2adfc29b1c666
--- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationExporter.cs (.../MacroStabilityInwardsCalculationConfigurationExporter.cs) (revision f03b47d0d73983de35188874a094ae07f1ea13fa)
+++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.IO/Configurations/MacroStabilityInwardsCalculationConfigurationExporter.cs (.../MacroStabilityInwardsCalculationConfigurationExporter.cs) (revision 5a34759978bfb0c2982463f8f8c2adfc29b1c666)
@@ -30,7 +30,10 @@
///
/// Exports a macro stability inwards calculation configuration and stores it as an XML file.
///
- public class MacroStabilityInwardsCalculationConfigurationExporter : CalculationConfigurationExporter
+ public class MacroStabilityInwardsCalculationConfigurationExporter : SchemaCalculationConfigurationExporter<
+ MacroStabilityInwardsCalculationConfigurationWriter,
+ MacroStabilityInwardsCalculation,
+ MacroStabilityInwardsCalculationConfiguration>
{
///
/// Creates a new instance of .
@@ -40,5 +43,39 @@
/// Thrown when is null.
/// Thrown when is invalid.
public MacroStabilityInwardsCalculationConfigurationExporter(IEnumerable configuration, string filePath) : base(configuration, filePath) {}
+
+ protected override MacroStabilityInwardsCalculationConfigurationWriter CreateWriter(string filePath)
+ {
+ return new MacroStabilityInwardsCalculationConfigurationWriter(filePath);
+ }
+
+ protected override MacroStabilityInwardsCalculationConfiguration ToConfiguration(MacroStabilityInwardsCalculation calculation)
+ {
+ MacroStabilityInwardsInput input = calculation.InputParameters;
+
+ var calculationConfiguration = new MacroStabilityInwardsCalculationConfiguration(calculation.Name);
+
+ if (input.HydraulicBoundaryLocation != null)
+ {
+ calculationConfiguration.HydraulicBoundaryLocation = input.HydraulicBoundaryLocation.Name;
+ }
+ else if (input.UseAssessmentLevelManualInput)
+ {
+ calculationConfiguration.AssessmentLevel = input.AssessmentLevel;
+ }
+
+ if (input.SurfaceLine != null)
+ {
+ calculationConfiguration.SurfaceLine = input.SurfaceLine.Name;
+ }
+
+ if (input.StochasticSoilModel != null)
+ {
+ calculationConfiguration.StochasticSoilModel = input.StochasticSoilModel.Name;
+ calculationConfiguration.StochasticSoilProfile = input.StochasticSoilProfile?.SoilProfile.Name;
+ }
+
+ return calculationConfiguration;
+ }
}
}
\ No newline at end of file