Index: Riskeer/Revetment/src/Riskeer.Revetment.Data/WaveConditionsInput.cs =================================================================== diff -u -r9dd54bc111b25b1509d3fc250d16640f5aa5b354 -r639a67c04f39d501cfe6bdb14dd3dccf3180bfb1 --- Riskeer/Revetment/src/Riskeer.Revetment.Data/WaveConditionsInput.cs (.../WaveConditionsInput.cs) (revision 9dd54bc111b25b1509d3fc250d16640f5aa5b354) +++ Riskeer/Revetment/src/Riskeer.Revetment.Data/WaveConditionsInput.cs (.../WaveConditionsInput.cs) (revision 639a67c04f39d501cfe6bdb14dd3dccf3180bfb1) @@ -107,10 +107,7 @@ newLowerBoundaryRevetment = ValidateLowerBoundaryInRange(newLowerBoundaryRevetment); - if (!AreValidBoundaries(newLowerBoundaryRevetment, UpperBoundaryRevetment)) - { - throw new ArgumentOutOfRangeException(nameof(value), Resources.WaveConditionsInput_ValidateRevetmentBoundaries_Upper_boundary_revetment_must_be_above_lower_boundary_revetment); - } + ValidateRevetmentBoundaries(newLowerBoundaryRevetment, UpperBoundaryRevetment); lowerBoundaryRevetment = newLowerBoundaryRevetment; } @@ -133,10 +130,7 @@ newUpperBoundaryRevetment = ValidateUpperBoundaryInRange(newUpperBoundaryRevetment); - if (!AreValidBoundaries(LowerBoundaryRevetment, newUpperBoundaryRevetment)) - { - throw new ArgumentOutOfRangeException(nameof(value), Resources.WaveConditionsInput_ValidateRevetmentBoundaries_Upper_boundary_revetment_must_be_above_lower_boundary_revetment); - } + ValidateRevetmentBoundaries(LowerBoundaryRevetment, newUpperBoundaryRevetment); upperBoundaryRevetment = newUpperBoundaryRevetment; } @@ -170,10 +164,7 @@ newLowerBoundaryWaterLevels = ValidateLowerBoundaryInRange(newLowerBoundaryWaterLevels); - if (!AreValidBoundaries(newLowerBoundaryWaterLevels, UpperBoundaryWaterLevels)) - { - throw new ArgumentOutOfRangeException(nameof(value), Resources.WaveConditionsInput_ValidateWaterLevelBoundaries_Upper_boundary_water_levels_must_be_above_lower_boundary_water_levels); - } + ValidateWaterLevelBoundaries(newLowerBoundaryWaterLevels, UpperBoundaryWaterLevels); lowerBoundaryWaterLevels = newLowerBoundaryWaterLevels; } @@ -203,10 +194,7 @@ newUpperBoundaryWaterLevels = ValidateUpperBoundaryInRange(newUpperBoundaryWaterLevels); - if (!AreValidBoundaries(LowerBoundaryWaterLevels, newUpperBoundaryWaterLevels)) - { - throw new ArgumentOutOfRangeException(nameof(value), Resources.WaveConditionsInput_ValidateWaterLevelBoundaries_Upper_boundary_water_levels_must_be_above_lower_boundary_water_levels); - } + ValidateWaterLevelBoundaries(LowerBoundaryWaterLevels, newUpperBoundaryWaterLevels); upperBoundaryWaterLevels = newUpperBoundaryWaterLevels; } @@ -308,11 +296,26 @@ return boundary; } - private static bool AreValidBoundaries(RoundedDouble lowerBoundary, RoundedDouble upperBoundary) + private static void ValidateRevetmentBoundaries(RoundedDouble lowerBoundary, RoundedDouble upperBoundary) { - return double.IsNaN(lowerBoundary) || double.IsNaN(upperBoundary) || lowerBoundary < upperBoundary; + ValidateBoundaries(lowerBoundary, upperBoundary, Resources.WaveConditionsInput_ValidateRevetmentBoundaries_Upper_boundary_revetment_must_be_above_lower_boundary_revetment); } + private static void ValidateWaterLevelBoundaries(RoundedDouble lowerBoundary, RoundedDouble upperBoundary) + { + ValidateBoundaries(lowerBoundary, upperBoundary, Resources.WaveConditionsInput_ValidateWaterLevelBoundaries_Upper_boundary_water_levels_must_be_above_lower_boundary_water_levels); + } + + private static void ValidateBoundaries(RoundedDouble lowerBoundary, RoundedDouble upperBoundary, string exceptionMessage) + { + if (!double.IsNaN(lowerBoundary) && + !double.IsNaN(upperBoundary) && + lowerBoundary >= upperBoundary) + { + throw new ArgumentOutOfRangeException(null, exceptionMessage); + } + } + private static BreakWater GetDefaultBreakWater() { return new BreakWater(BreakWaterType.Dam, 0.0);