Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresPlugin.cs =================================================================== diff -u -r62d0870e6e0d9143fe085d443325af428c4ea143 -rad30ede784f5cb85ecf6e652fd2cef506c22208f --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresPlugin.cs (.../HeightStructuresPlugin.cs) (revision 62d0870e6e0d9143fe085d443325af428c4ea143) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresPlugin.cs (.../HeightStructuresPlugin.cs) (revision ad30ede784f5cb85ecf6e652fd2cef506c22208f) @@ -256,17 +256,6 @@ }; } - private void CalculateAll(HeightStructuresFailureMechanism failureMechanism, - IEnumerable> calculations, - IAssessmentSection assessmentSection) - { - ActivityProgressDialogRunner.Run(Gui.MainWindow, - calculations.Select(calc => new HeightStructuresCalculationActivity(calc, - assessmentSection.HydraulicBoundaryDatabase.FilePath, - failureMechanism, - assessmentSection)).ToArray()); - } - private static void ValidateAll(IEnumerable> heightStructuresCalculations, IAssessmentSection assessmentSection) { @@ -474,7 +463,9 @@ private void CalculateAll(HeightStructuresFailureMechanismContext context) { - CalculateAll(context.WrappedData, context.WrappedData.Calculations.OfType>(), context.Parent); + ActivityProgressDialogRunner.Run( + Gui.MainWindow, + HeightStructuresCalculationActivityFactory.CreateCalculationActivities(context.WrappedData, context.Parent)); } #endregion @@ -709,7 +700,9 @@ private void CalculateAll(CalculationGroup group, HeightStructuresCalculationGroupContext context) { - CalculateAll(context.FailureMechanism, group.GetCalculations().OfType>(), context.AssessmentSection); + ActivityProgressDialogRunner.Run( + Gui.MainWindow, + HeightStructuresCalculationActivityFactory.CreateCalculationActivities(group, context.FailureMechanism, context.AssessmentSection)); } #endregion @@ -781,10 +774,9 @@ private void Calculate(StructuresCalculation calculation, HeightStructuresCalculationContext context) { - ActivityProgressDialogRunner.Run(Gui.MainWindow, new HeightStructuresCalculationActivity(calculation, - context.AssessmentSection.HydraulicBoundaryDatabase.FilePath, - context.FailureMechanism, - context.AssessmentSection)); + ActivityProgressDialogRunner.Run( + Gui.MainWindow, + HeightStructuresCalculationActivityFactory.CreateCalculationActivity(context.WrappedData, context.FailureMechanism, context.AssessmentSection)); } private static void CalculationContextOnNodeRemoved(HeightStructuresCalculationContext context, object parentData) Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Service/HeightStructuresCalculationActivity.cs =================================================================== diff -u -ra494bde768f1b989d31bff6a801a1816d6f9692e -rad30ede784f5cb85ecf6e652fd2cef506c22208f --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Service/HeightStructuresCalculationActivity.cs (.../HeightStructuresCalculationActivity.cs) (revision a494bde768f1b989d31bff6a801a1816d6f9692e) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Service/HeightStructuresCalculationActivity.cs (.../HeightStructuresCalculationActivity.cs) (revision ad30ede784f5cb85ecf6e652fd2cef506c22208f) @@ -32,7 +32,7 @@ /// /// for running a height structures calculation. /// - public class HeightStructuresCalculationActivity : CalculatableActivity + internal class HeightStructuresCalculationActivity : CalculatableActivity { private readonly StructuresCalculation calculation; private readonly string hydraulicBoundaryDatabaseFilePath; Index: Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Integration.Test/HeightStructuresCalculationActivityIntegrationTest.cs =================================================================== diff -u -ra4e84781ec7a739b46a6e46a4d724b48a29c6b0c -rad30ede784f5cb85ecf6e652fd2cef506c22208f --- Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Integration.Test/HeightStructuresCalculationActivityIntegrationTest.cs (.../HeightStructuresCalculationActivityIntegrationTest.cs) (revision a4e84781ec7a739b46a6e46a4d724b48a29c6b0c) +++ Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Integration.Test/HeightStructuresCalculationActivityIntegrationTest.cs (.../HeightStructuresCalculationActivityIntegrationTest.cs) (revision ad30ede784f5cb85ecf6e652fd2cef506c22208f) @@ -31,6 +31,7 @@ using Ringtoets.Common.Data.Hydraulics; using Ringtoets.Common.Data.Structures; using Ringtoets.Common.IO.FileImporters; +using Ringtoets.Common.Service; using Ringtoets.Common.Service.TestUtil; using Ringtoets.HeightStructures.Data; using Ringtoets.HeightStructures.Data.TestUtil; @@ -64,7 +65,9 @@ var failureMechanism = new HeightStructuresFailureMechanism(); var calculation = new StructuresCalculation(); - var activity = new HeightStructuresCalculationActivity(calculation, "", failureMechanism, assessmentSection); + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); // Call Action call = () => activity.Run(); @@ -108,7 +111,10 @@ } }; - var activity = new HeightStructuresCalculationActivity(calculation, validFilePath, failureMechanism, assessmentSection); + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); + using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) { // Call @@ -168,8 +174,9 @@ } }; - var activity = new HeightStructuresCalculationActivity(calculation, validFilePath, failureMechanism, assessmentSection); - + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) { // Call @@ -213,8 +220,9 @@ calculation.Attach(observer); - var activity = new HeightStructuresCalculationActivity(calculation, validFilePath, failureMechanism, assessmentSection); - + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) { activity.Run(); @@ -269,8 +277,9 @@ calculation.Attach(observer); - var activity = new HeightStructuresCalculationActivity(calculation, validFilePath, failureMechanism, assessmentSection); - + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) { activity.Run(); @@ -315,7 +324,10 @@ } }; - var activity = new HeightStructuresCalculationActivity(calculation, validFilePath, failureMechanism, assessmentSection); + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); + using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) { // Call @@ -360,7 +372,10 @@ } }; - var activity = new HeightStructuresCalculationActivity(calculation, validFilePath, failureMechanism, assessmentSection); + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); + using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) { // Call @@ -405,7 +420,10 @@ } }; - var activity = new HeightStructuresCalculationActivity(calculation, validFilePath, failureMechanism, assessmentSection); + CalculatableActivity activity = HeightStructuresCalculationActivityFactory.CreateCalculationActivity(calculation, + failureMechanism, + assessmentSection); + using (new HydraRingCalculatorFactoryConfig(calculatorFactory)) { // Call