Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DataPlugins/DataPluginImporter.cs
===================================================================
diff -u -r6779 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DataPlugins/DataPluginImporter.cs (.../DataPluginImporter.cs) (revision 6779)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DataPlugins/DataPluginImporter.cs (.../DataPluginImporter.cs) (revision 6823)
@@ -229,22 +229,21 @@
///
/// Gets the surface line identifier list.
///
- /// The dike ring identifier.
///
- public IEnumerable GetSurfaceLineIdList(string dikeRingId)
+ public IEnumerable GetSurfaceLineIdList()
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
return dike.SurfaceLines2.Select(surfaceLine => surfaceLine.Name);
}
///
/// Gets the dike ring identifier list.
///
///
- public IEnumerable GetDikeRingIdList()
+ public string GetDikeRingIdList()
{
ImportDikeRingAndLocationData();
- return WaterBoard.Dikes.Select(dike => dike.Name);
+ return WaterBoard.Dike.Name;
}
///
@@ -261,23 +260,21 @@
///
/// Gets the scenario list.
///
- /// The dike ring identifier.
/// The location identifier.
///
- public IEnumerable GetScenarioList(string dikeRingId, string locationId)
+ public IEnumerable GetScenarioList(string locationId)
{
- Location location = GetLocation(dikeRingId, locationId);
+ Location location = GetLocation(locationId);
return location.Scenarios.Select(scenario => scenario.LocationScenarioID);
}
///
/// Gets the dike ring information.
///
- /// The dike ring identifier.
///
- public Info GetDikeRingInfo(string dikeRingId)
+ public Info GetDikeRingInfo()
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
return new Info
{
Name = dike.Name,
@@ -289,11 +286,10 @@
///
/// Gets the dike parameters.
///
- /// The dike ring identifier.
///
- public IEnumerable GetDikeParameters(string dikeRingId)
+ public IEnumerable GetDikeParameters()
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
Dictionary nameValuePairs = dike.GetParametersAsNameValuePairs();
return GetParametersFromDictionary(nameValuePairs, dike);
@@ -302,24 +298,22 @@
///
/// Gets the location identifier list.
///
- /// The dike ring identifier.
///
- public IEnumerable GetLocationIdList(string dikeRingId)
+ public IEnumerable GetLocationIdList()
{
ImportDikeRingAndLocationData();
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
return dike.Locations.Select(location => location.Name);
}
///
/// Gets the location information.
///
- /// The dike ring identifier.
/// The location identifier.
///
- public Info GetLocationInfo(string dikeRingId, string locationId)
+ public Info GetLocationInfo(string locationId)
{
- Location location = GetLocation(dikeRingId, locationId);
+ Location location = GetLocation(locationId);
return new Info
{
Name = location.Name,
@@ -331,12 +325,11 @@
///
/// Gets the location details.
///
- /// The dike ring identifier.
/// The location identifier.
///
- public IEnumerable GetLocationDetails(string dikeRingId, string locationId)
+ public IEnumerable GetLocationDetails(string locationId)
{
- Location location = GetLocation(dikeRingId, locationId);
+ Location location = GetLocation(locationId);
Dictionary nameValuePairs = location.GetParametersAsNameValuePairs();
return GetParametersFromDictionary(nameValuePairs, location);
@@ -345,14 +338,13 @@
///
/// Gets the scenario details.
///
- /// The dike ring identifier.
/// The location identifier.
/// The scenario identifier.
///
- public IEnumerable GetScenarioDetails(string dikeRingId, string locationId, string scenarioId)
+ public IEnumerable GetScenarioDetails(string locationId, string scenarioId)
{
- Location location = GetLocation(dikeRingId, locationId);
- Scenario scenario = GetScenario(dikeRingId, locationId, scenarioId);
+ Location location = GetLocation(locationId);
+ Scenario scenario = GetScenario(locationId, scenarioId);
if (scenario == null)
{
@@ -371,20 +363,19 @@
}
}
- public void DisposeImportedItem(string dikeRingId)
+ public void DisposeImportedItem()
{
- GetDike(dikeRingId).Dispose();
+ GetDike().Dispose();
}
///
/// Gets the surface line points.
///
- /// The dike ring identifier.
/// The surface line identifier.
///
- public IList GetSurfaceLinePoints(string dikeRingId, string surfaceLineId)
+ public IList GetSurfaceLinePoints(string surfaceLineId)
{
- SurfaceLine2 surfaceLine = GetSurfaceLine(dikeRingId, surfaceLineId);
+ SurfaceLine2 surfaceLine = GetSurfaceLine(surfaceLineId);
var surfaceLinePoints = new List();
for (var pointIndex = 0; pointIndex < surfaceLine.Geometry.Points.Count(); pointIndex++)
@@ -398,13 +389,11 @@
///
/// Gets the surface line characteristic points.
///
- /// The dike ring identifier.
/// The surface line identifier.
///
- public IEnumerable GetSurfaceLineCharacteristicPoints(string dikeRingId,
- string surfaceLineId)
+ public IEnumerable GetSurfaceLineCharacteristicPoints(string surfaceLineId)
{
- SurfaceLine2 surfaceLine = GetSurfaceLine(dikeRingId, surfaceLineId);
+ SurfaceLine2 surfaceLine = GetSurfaceLine(surfaceLineId);
foreach (CharacteristicPointType type in Enum.GetValues(typeof(CharacteristicPointType)))
{
@@ -434,9 +423,8 @@
///
/// Gets the segment identifier list.
///
- /// The dike ring identifier.
///
- public IEnumerable GetSegmentIdList(string dikeRingId)
+ public IEnumerable GetSegmentIdList()
{
ThrowIfDataNotRead();
return WaterBoard.Segments.Select(segment => segment.Name);
@@ -445,11 +433,10 @@
///
/// Gets the profile1 d identifier list for segment.
///
- /// The dike ring identifier.
/// The segment identifier.
/// Type of the segment failure mechanism.
///
- public IEnumerable GetProfile1DIdListForSegment(string dikeRingId, string segmentId, FailureMechanismSystemType segmentFailureMechanismType)
+ public IEnumerable GetProfile1DIdListForSegment(string segmentId, FailureMechanismSystemType segmentFailureMechanismType)
{
ThrowIfDataNotRead();
Segment segment = GetSegment(segmentId);
@@ -468,11 +455,10 @@
///
/// Gets the profile2 d identifier list for segment.
///
- /// The dike ring identifier.
/// The segment identifier.
/// Type of the segment failure mechanism.
///
- public IEnumerable GetProfile2DIdListForSegment(string dikeRingId, string segmentId, FailureMechanismSystemType segmentFailureMechanismType)
+ public IEnumerable GetProfile2DIdListForSegment(string segmentId, FailureMechanismSystemType segmentFailureMechanismType)
{
ThrowIfDataNotRead();
Segment segment = GetSegment(segmentId);
@@ -491,13 +477,11 @@
///
/// Gets the segment profile1 d details.
///
- /// The dike ring identifier.
/// The segment identifier.
/// The profile1 d identifier.
/// The segment FailureMechanism Type
///
- public IEnumerable GetSegmentProfile1DDetails(string dikeRingId, string segmentId,
- string profile1DId, FailureMechanismSystemType segmentFailureMechanismType)
+ public IEnumerable GetSegmentProfile1DDetails(string segmentId, string profile1DId, FailureMechanismSystemType segmentFailureMechanismType)
{
Segment segment = GetSegment(segmentId);
Dictionary nameValuePairs = segment.GetParametersForSoilProfile1DAsNameValuePairs(profile1DId, segmentFailureMechanismType);
@@ -508,12 +492,11 @@
///
/// Gets the segment profile2 d details.
///
- /// The dike ring identifier.
/// The segment identifier.
/// The profile2 d identifier.
- /// The failuremechanism system type
+ /// The failure mechanism system type
///
- public IEnumerable GetSegmentProfile2DDetails(string dikeRingId, string segmentId,
+ public IEnumerable GetSegmentProfile2DDetails(string segmentId,
string profile2DId, FailureMechanismSystemType failureMechanismSystemType)
{
Segment segment = GetSegment(segmentId);
@@ -525,23 +508,21 @@
///
/// Gets the soil profile1 d identifier list.
///
- /// The dike ring identifier.
///
- public IEnumerable GetSoilProfile1DIdList(string dikeRingId)
+ public IEnumerable GetSoilProfile1DIdList()
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
return dike.SoilProfiles.Select(soilProfile => soilProfile.Name);
}
///
/// Gets the soil profile1 d details.
///
- /// The dike ring identifier.
/// The soil profile1 d identifier.
///
- public DpSoilProfile GetSoilProfile1DDetails(string dikeRingId, string soilProfile1DId)
+ public DpSoilProfile GetSoilProfile1DDetails(string soilProfile1DId)
{
- SoilProfile1D soilProfile = GetSoilProfile(dikeRingId, soilProfile1DId);
+ SoilProfile1D soilProfile = GetSoilProfile(soilProfile1DId);
var dpSoilProfile = new DpSoilProfile
{
Layers = new List()
@@ -570,10 +551,9 @@
///
/// Gets the soil profile2 d identifier list.
///
- /// The dike ring identifier.
///
///
- public IEnumerable GetSoilProfile2DIdList(string dikeRingId)
+ public IEnumerable GetSoilProfile2DIdList()
{
ThrowIfDataNotRead();
throw new NotImplementedException();
@@ -582,11 +562,10 @@
///
/// Gets the soil profile2 d details.
///
- /// The dike ring identifier.
/// The soil profile2 d identifier.
///
///
- public string GetSoilProfile2DDetails(string dikeRingId, string soilProfile2DId)
+ public string GetSoilProfile2DDetails(string soilProfile2DId)
{
ThrowIfDataNotRead();
throw new NotImplementedException();
@@ -595,24 +574,22 @@
///
/// Gets the soil identifier list.
///
- /// The dike ring identifier.
///
- public IEnumerable GetSoilIdList(string dikeRingId)
+ public IEnumerable GetSoilIdList()
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
IEnumerable soilNames = dike.SoilList.Soils.Select(soil => soil.Name).ToList();
return soilNames;
}
///
/// Gets the soil details.
///
- /// The dike ring identifier.
/// The soil identifier.
///
- public IEnumerable GetSoilDetails(string dikeRingId, string soilId)
+ public IEnumerable GetSoilDetails(string soilId)
{
- DamSoil soil = GetSoil(dikeRingId, soilId);
+ DamSoil soil = GetSoil(soilId);
Dictionary nameValuePairs = SoilUtils.GetParametersAsNameValuePairs(soil);
return GetParametersFromDictionary(nameValuePairs, soil);
@@ -675,12 +652,11 @@
///
/// Gets the dike.
///
- /// The dike ring identifier.
///
- private Dike GetDike(string dikeRingId)
+ private Dike GetDike()
{
ThrowIfDataNotRead();
- return WaterBoard.Dikes.First(d => d.Name.Equals(dikeRingId));
+ return WaterBoard.Dike;
}
///
@@ -697,63 +673,58 @@
///
/// Gets the location.
///
- /// The dike ring identifier.
/// The location identifier.
///
- private Location GetLocation(string dikeRingId, string locationId)
+ private Location GetLocation(string locationId)
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
return dike.Locations.First(l => l.Name.Equals(locationId));
}
///
/// Gets a soil.
///
- /// The dike ring identifier.
/// The soil identifier.
///
- private DamSoil GetSoil(string dikeRingId, string soilId)
+ private DamSoil GetSoil(string soilId)
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
DamSoil soil = dike.DamSoils.FirstOrDefault(s => s.Name.Equals(soilId, StringComparison.InvariantCultureIgnoreCase));
return soil;
}
///
/// Gets a soil profile.
///
- /// The dike ring identifier.
/// The soil profile1 d identifier.
///
- private SoilProfile1D GetSoilProfile(string dikeRingId, string soilProfile1DId)
+ private SoilProfile1D GetSoilProfile(string soilProfile1DId)
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
return dike.SoilProfiles.First(p => p.Name.Equals(soilProfile1DId));
}
///
/// Gets a scenario.
///
- /// The dike ring identifier.
/// The location identifier.
/// The scenario identifier.
///
- private Scenario GetScenario(string dikeRingId, string locationId, string scenarioId)
+ private Scenario GetScenario(string locationId, string scenarioId)
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
Location location = dike.Locations.FirstOrDefault(l => l.Name.Equals(locationId));
return (location == null ? null : location.Scenarios.FirstOrDefault(s => s.LocationScenarioID.Equals(scenarioId)));
}
///
/// Gets a surface line.
///
- /// The dike ring identifier.
/// The surface line identifier.
///
- private SurfaceLine2 GetSurfaceLine(string dikeRingId, string surfaceLineId)
+ private SurfaceLine2 GetSurfaceLine(string surfaceLineId)
{
- Dike dike = GetDike(dikeRingId);
+ Dike dike = GetDike();
return dike.SurfaceLines2.First(x => x.Name.Equals(surfaceLineId));
}
@@ -817,15 +788,6 @@
}
///
- /// Get all locations for all dikes
- ///
- ///
- private IEnumerable GetAllLocations()
- {
- return WaterBoard.Dikes.SelectMany(dike => dike.Locations);
- }
-
- ///
/// Pre conditions:
/// - A list of waterboard locations with initialized x,y values
/// - shape file ccontaining the attributes and data
@@ -1174,12 +1136,9 @@
///
private void CorrectSegmentAssignments()
{
- foreach (Dike dike in WaterBoard.Dikes)
+ foreach (Location location in WaterBoard.Dike.Locations)
{
- foreach (Location location in dike.Locations)
- {
- location.Segment = WaterBoard.Segments.FirstOrDefault(s => s.Name.Equals(location.SegmentId));
- }
+ location.Segment = WaterBoard.Segments.FirstOrDefault(s => s.Name.Equals(location.SegmentId));
}
}
Index: DamClients/DamUI/trunk/src/Dam/Forms/DamNewProjectDialog.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/Dam/Forms/DamNewProjectDialog.cs (.../DamNewProjectDialog.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/Dam/Forms/DamNewProjectDialog.cs (.../DamNewProjectDialog.cs) (revision 6823)
@@ -370,13 +370,18 @@
{
string damProjectFolder = Path.GetDirectoryName(sourceFileName);
List importLogMessages = null;
- List dikeRingIds = null;
+ string dikeRingId = null;
DataEventPublisher.InvokeWithoutPublishingEvents(() =>
{
- dikeRingIds = WaterBoardImporter.ImportDikeRingIds(
+ dikeRingId = WaterBoardImporter.ImportDikeRingIds(
damProjectFolder, dataSourceContainer,
- DamNewProjectData.DamProjectType, out importLogMessages).ToList();
+ DamNewProjectData.DamProjectType, out importLogMessages);
});
+ var dikeRingIds = new List();
+ if (dikeRingId != null)
+ {
+ dikeRingIds.Add(dikeRingId);
+ }
DikeRingsCheckedListBox.Items.Clear();
if (dikeRingIds.Count > 0)
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/ImportDirector.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/ImportDirector.cs (.../ImportDirector.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/ImportDirector.cs (.../ImportDirector.cs) (revision 6823)
@@ -44,10 +44,7 @@
}
};
- damProject.Import(importFolder, container, new[]
- {
- "Dike from CSV"
- }, DamProjectType.Design, progress);
+ damProject.Import(importFolder, container, "Dike from CSV", DamProjectType.Design, progress);
return damProject.DamProjectData.WaterBoard;
}
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/IO/CombineImportedDataTest.cs
===================================================================
diff -u -r6816 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/IO/CombineImportedDataTest.cs (.../CombineImportedDataTest.cs) (revision 6816)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/IO/CombineImportedDataTest.cs (.../CombineImportedDataTest.cs) (revision 6823)
@@ -52,7 +52,7 @@
using (var damProjectData = new DamProjectData())
{
const string testDataFolder = @"TestData\CsvData\ImporterTest";
- damProjectData.WaterBoard.Dikes.Add(new Dike());
+ damProjectData.WaterBoard.Dike = new Dike();
var configuredAttributes = new List
{
new DataAttribute
@@ -81,7 +81,7 @@
{
progress = null;
var csvImporter = new CsvImporter();
- string dikeRingId = damProjectData.WaterBoard.Dikes[0].Name;
+ string dikeRingId = damProjectData.WaterBoard.Dike.Name;
foreach (CsvImporterLocations.LocationRecord locationRecord in locationRecords)
{
locationRecord.DikeRingId = dikeRingId;
@@ -126,26 +126,26 @@
}
}
- Assert.That(damProjectData.WaterBoard.Dikes[0].Locations.Count, Is.EqualTo(5547));
+ Assert.That(damProjectData.WaterBoard.Dike.Locations.Count, Is.EqualTo(5547));
Assert.That(damProjectData.WaterBoard.Segments.Count, Is.EqualTo(306));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles.Count, Is.EqualTo(3874)); // ca. 6 layers per profile. kan dus kloppen!
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers.Count, Is.EqualTo(8));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers[0].Soil.Name, Is.EqualTo("HHNK1_kade"));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers[0].Name, Is.EqualTo("Layer0"));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers[0].TopLevel, Is.EqualTo(30.0));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SurfaceLines2.Count, Is.EqualTo(3));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles.Count, Is.EqualTo(3874)); // ca. 6 layers per profile. kan dus kloppen!
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers.Count, Is.EqualTo(8));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers[0].Soil.Name, Is.EqualTo("HHNK1_kade"));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers[0].Name, Is.EqualTo("Layer0"));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers[0].TopLevel, Is.EqualTo(30.0));
+ Assert.That(damProjectData.WaterBoard.Dike.SurfaceLines2.Count, Is.EqualTo(3));
// Test import of scenarios
- Location loc = damProjectData.WaterBoard.Dikes[0].Locations.FirstOrDefault(x => x.Name.Equals("TPL_BALGZANDKANAAL_0110"));
+ Location loc = damProjectData.WaterBoard.Dike.Locations.FirstOrDefault(x => x.Name.Equals("TPL_BALGZANDKANAAL_0110"));
Assert.That(loc.Scenarios.Count, Is.EqualTo(8));
- loc = damProjectData.WaterBoard.Dikes[0].Locations.FirstOrDefault(x => x.Name.Equals("TPL_BALGZANDKANAAL_0180"));
+ loc = damProjectData.WaterBoard.Dike.Locations.FirstOrDefault(x => x.Name.Equals("TPL_BALGZANDKANAAL_0180"));
Assert.That(loc.Scenarios.Count, Is.EqualTo(6));
// Following location has double entries in CSV file; check if this is handled correctly
- loc = damProjectData.WaterBoard.Dikes[0].Locations.FirstOrDefault(x => x.Name.Equals("TPL_SCHERMER_BUITEN_WEST_0490"));
+ loc = damProjectData.WaterBoard.Dike.Locations.FirstOrDefault(x => x.Name.Equals("TPL_SCHERMER_BUITEN_WEST_0490"));
Assert.That(loc.Scenarios.Count, Is.EqualTo(6));
// Check aquifer data
- IList aquifers = damProjectData.WaterBoard.Dikes[0].Aquifers;
+ IList aquifers = damProjectData.WaterBoard.Dike.Aquifers;
Assert.That(aquifers.Count, Is.EqualTo(4));
Assert.That(aquifers[0].StixFileName, Is.EqualTo("DWP_1.stix"));
Assert.That(aquifers[0].LayerName, Is.EqualTo("L1"));
@@ -223,29 +223,29 @@
Assert.Multiple(() =>
{
- Assert.That(damProjectData.WaterBoard.Dikes[0].Locations, Has.Count.EqualTo(2));
+ Assert.That(damProjectData.WaterBoard.Dike.Locations, Has.Count.EqualTo(2));
Assert.That(damProjectData.WaterBoard.Segments, Has.Count.EqualTo(2));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles, Has.Count.EqualTo(23));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles, Has.Count.EqualTo(23));
});
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers, Has.Count.EqualTo(4));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers, Has.Count.EqualTo(4));
Assert.Multiple(() =>
{
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers[0].Soil.Name, Is.EqualTo("kade"));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers[0].Name, Is.EqualTo("Layer0"));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilProfiles[0].Layers[0].TopLevel, Is.EqualTo(60.0));
- Assert.That(damProjectData.WaterBoard.Dikes[0].SurfaceLines2, Has.Count.EqualTo(2));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers[0].Soil.Name, Is.EqualTo("kade"));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers[0].Name, Is.EqualTo("Layer0"));
+ Assert.That(damProjectData.WaterBoard.Dike.SoilProfiles[0].Layers[0].TopLevel, Is.EqualTo(60.0));
+ Assert.That(damProjectData.WaterBoard.Dike.SurfaceLines2, Has.Count.EqualTo(2));
});
// Check soil data
- Assert.That(damProjectData.WaterBoard.Dikes[0].SoilList.Soils, Has.Count.EqualTo(14));
- Soil soil = damProjectData.WaterBoard.Dikes[0].SoilList.Soils.FirstOrDefault(s => s.Name == "CCC");
+ Assert.That(damProjectData.WaterBoard.Dike.SoilList.Soils, Has.Count.EqualTo(14));
+ Soil soil = damProjectData.WaterBoard.Dike.SoilList.Soils.FirstOrDefault(s => s.Name == "CCC");
Assert.That(soil, Is.Not.Null);
Assert.Multiple(() =>
{
Assert.That(soil.ShearStrengthModel, Is.EqualTo(ShearStrengthModel.StressTable));
Assert.That(soil.StressTable.Name, Is.EqualTo("CurveKlei"));
});
- soil = damProjectData.WaterBoard.Dikes[0].SoilList.Soils.FirstOrDefault(s => s.Name == "FFO");
+ soil = damProjectData.WaterBoard.Dike.SoilList.Soils.FirstOrDefault(s => s.Name == "FFO");
Assert.That(soil, Is.Not.Null);
Assert.Multiple(() =>
{
@@ -254,16 +254,16 @@
});
// Check degree of consolidation data
- Assert.That(damProjectData.WaterBoard.Dikes[0].DamSoils, Has.Count.EqualTo(14));
- DamSoil damSoil = damProjectData.WaterBoard.Dikes[0].DamSoils.FirstOrDefault(s => s.Name == "CCC");
+ Assert.That(damProjectData.WaterBoard.Dike.DamSoils, Has.Count.EqualTo(14));
+ DamSoil damSoil = damProjectData.WaterBoard.Dike.DamSoils.FirstOrDefault(s => s.Name == "CCC");
Assert.That(damSoil, Is.Not.Null);
Assert.That(damSoil.TrafficLoadDegreeOfConsolidation, Is.EqualTo(25));
- damSoil = damProjectData.WaterBoard.Dikes[0].DamSoils.FirstOrDefault(s => s.Name == "BAS");
+ damSoil = damProjectData.WaterBoard.Dike.DamSoils.FirstOrDefault(s => s.Name == "BAS");
Assert.That(damSoil, Is.Not.Null);
Assert.That(damSoil.TrafficLoadDegreeOfConsolidation, Is.EqualTo(100));
// Check location specific data
- Location location = damProjectData.WaterBoard.Dikes[0].Locations.FirstOrDefault(s => s.Name.Equals("25-2-2-A-1-A"));
+ Location location = damProjectData.WaterBoard.Dike.Locations.FirstOrDefault(s => s.Name.Equals("25-2-2-A-1-A"));
Assert.That(location, Is.Not.Null);
Assert.Multiple(() =>
{
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DikeTest.cs
===================================================================
diff -u -r6812 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DikeTest.cs (.../DikeTest.cs) (revision 6812)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DikeTest.cs (.../DikeTest.cs) (revision 6823)
@@ -69,7 +69,7 @@
location1.Name = "Location1";
location1.Segment = segment1;
dike.Locations.Add(location1);
-
+
// Soil lists
dike.SoilList = new SoilList();
dike.DamSoils = [];
@@ -335,10 +335,10 @@
{
var soil1 = new DamSoil();
var soil2 = new DamSoil();
-
+
dike.AddDamSoil(soil1);
dike.AddDamSoil(soil2);
-
+
Assert.Multiple(() =>
{
Assert.That(dike.SoilList.Soils, Has.Count.EqualTo(2));
@@ -352,7 +352,7 @@
Assert.That(dike.DamSoils[1], Is.EqualTo(soil2));
});
}
-
+
[Test]
public void GivenDamSoil_WhenRemovingIt_ThenIsRemovedFromBothSoilLists()
{
@@ -362,9 +362,9 @@
dike.DamSoils.Clear();
dike.AddDamSoil(soil1);
dike.AddDamSoil(soil2);
-
+
dike.RemoveDamSoil(soil2);
-
+
Assert.Multiple(() =>
{
Assert.That(dike.SoilList.Soils, Has.Count.EqualTo(1));
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProjectCalculationSpecification.cs
===================================================================
diff -u -r6764 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProjectCalculationSpecification.cs (.../DamProjectCalculationSpecification.cs) (revision 6764)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProjectCalculationSpecification.cs (.../DamProjectCalculationSpecification.cs) (revision 6823)
@@ -44,8 +44,6 @@
public DamProjectCalculationSpecification()
{
DamCalculationSpecifications = new List();
- //waterLevelTimeSeriesFileName = @"d:\src\delftgeosystems\trunk\data\Dam\RRD\Groot Salland\DAM UI Testdata\inputshortstart_dam.xml";
-
DataEventPublisher.OnAfterChange += DataEventPublisher_OnAfterChange;
}
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/FillDamUiFromXmlOutputTests.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/FillDamUiFromXmlOutputTests.cs (.../FillDamUiFromXmlOutputTests.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/FillDamUiFromXmlOutputTests.cs (.../FillDamUiFromXmlOutputTests.cs) (revision 6823)
@@ -83,7 +83,7 @@
string outputString = DamXmlSerialization.SaveOutputAsXmlString(output);
output = DamXmlSerialization.LoadOutputFromXmlString(outputString);
var actualDamProjectData = new DamProjectData();
- actualDamProjectData.WaterBoard.Dikes.Add(new Dike());
+ actualDamProjectData.WaterBoard.Dike = new Dike();
actualDamProjectData.DamProjectCalculationSpecification.CurrentSpecification = new DamFailureMechanismeCalculationSpecification();
Assert.That(() => FillDamUiFromXmlOutput.AddOutputToDamProjectData(actualDamProjectData, output),
Throws.InstanceOf());
@@ -99,7 +99,7 @@
string outputString = DamXmlSerialization.SaveOutputAsXmlString(output);
output = DamXmlSerialization.LoadOutputFromXmlString(outputString);
var actualDamProjectData = new DamProjectData();
- actualDamProjectData.WaterBoard.Dikes.Add(new Dike());
+ actualDamProjectData.WaterBoard.Dike = new Dike();
actualDamProjectData.DamProjectCalculationSpecification.CurrentSpecification =
new DamFailureMechanismeCalculationSpecification();
actualDamProjectData = FillDamUiFromXmlOutput.AddOutputToDamProjectData(actualDamProjectData, output);
@@ -300,7 +300,7 @@
}
};
- project.WaterBoard.Dikes.Add(new Dike());
+ project.WaterBoard.Dike = new Dike();
SurfaceLine2 surfaceline = CreateSurfaceLine2();
var location1 = new Location();
location1.Name = "Location 1";
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImportDirectorTests.cs
===================================================================
diff -u -r6793 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImportDirectorTests.cs (.../CsvImportDirectorTests.cs) (revision 6793)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImportDirectorTests.cs (.../CsvImportDirectorTests.cs) (revision 6823)
@@ -160,7 +160,7 @@
{
using (WaterBoard waterBoard = ImportDirector.Construct(importFolder, null))
{
- Dike dike = waterBoard.Dikes[0];
+ Dike dike = waterBoard.Dike;
Assert.That(dike, Is.Not.Null);
@@ -185,7 +185,7 @@
Assert.That(dike.SurfaceLines2[0].CharacteristicPoints.GetGeometryPoint(CharacteristicPointType.BottomDitchPolderSide), Is.Not.Null);
}
}
-
+
///
/// Test
///
@@ -196,19 +196,19 @@
public void SoilProfilesOfImportedDikeHaveCorrectProbability()
{
WaterBoard waterBoard = ImportDirector.Construct(importFolder, null);
- Dike dike = waterBoard.Dikes[0];
+ Dike dike = waterBoard.Dike;
Assert.That(waterBoard.Segments[0].GetSoilProfileProbability(dike.SoilProfiles[0], FailureMechanismSystemType.StabilityInside), Is.EqualTo(80));
Assert.That(waterBoard.Segments[0].GetSoilProfileProbability(dike.SoilProfiles[1], FailureMechanismSystemType.Piping), Is.EqualTo(100));
}
-
+
///
/// Test
///
[Test]
public void SurfaceLinesOfImportedDikeHaveSameInstance()
{
WaterBoard waterBoard = ImportDirector.Construct(importFolder, null);
- Dike dike = waterBoard.Dikes[0];
+ Dike dike = waterBoard.Dike;
Assert.That(dike.SurfaceLines2[0], Is.SameAs(dike.Locations[0].SurfaceLine2));
}
@@ -219,7 +219,7 @@
public void CanImportDikeWithMinimalInput()
{
WaterBoard waterBoard = ImportDirector.Construct(importFolder, null);
- Dike dike = waterBoard.Dikes[0];
+ Dike dike = waterBoard.Dike;
Assert.That(dike, Is.Not.Null);
}
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs
===================================================================
diff -u -r6817 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 6817)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 6823)
@@ -157,10 +157,7 @@
// Create the project to serialize
var waterBoard = new WaterBoard
{
- Dikes = new List
- {
- dike
- }
+ Dike = dike
};
var projectData = new DamProjectData();
@@ -259,10 +256,7 @@
// Create the project to serialize
var waterBoard = new WaterBoard
{
- Dikes = new List
- {
- dike
- }
+ Dike = dike
};
var projectData = new DamProjectData();
@@ -341,10 +335,7 @@
// Create the project to serialize
var waterBoard = new WaterBoard
{
- Dikes = new List
- {
- dike
- }
+ Dike = dike
};
var projectData = new DamProjectData();
@@ -427,10 +418,7 @@
// Create the project to serialize
var waterBoard = new WaterBoard
{
- Dikes = new List
- {
- dike
- }
+ Dike = dike
};
var projectData = new DamProjectData();
@@ -529,10 +517,7 @@
// Create the project to serialize
var waterBoard = new WaterBoard
{
- Dikes = new List
- {
- dike
- }
+ Dike = dike
};
var projectData = new DamProjectData();
@@ -585,7 +570,7 @@
{
// Given DataSet Containing Illegal Characters
DamProjectData expectedDamProjectData = CreateExampleDamProjectData();
- Location location = expectedDamProjectData.WaterBoard.Dikes[0].Locations[0];
+ Location location = expectedDamProjectData.WaterBoard.Dike.Locations[0];
location.Name = id;
// When Writing Xml
@@ -616,7 +601,7 @@
{
// Given DataSet Containing Illegal Characters
DamProjectData expectedDamProjectData = CreateExampleDamProjectData();
- Location location = expectedDamProjectData.WaterBoard.Dikes[0].Locations[0];
+ Location location = expectedDamProjectData.WaterBoard.Dike.Locations[0];
location.Name = id;
// When Writing Xml
@@ -634,7 +619,7 @@
{
// Given DataSet with undefined RiverLevel
DamProjectData damProjectData = CreateExampleDamProjectData();
- Scenario scenario = damProjectData.WaterBoard.Dikes[0].Locations[0].Scenarios[0];
+ Scenario scenario = damProjectData.WaterBoard.Dike.Locations[0].Scenarios[0];
scenario.RiverLevel = null;
// When Writing Xml, Then Raise Exception With Clear Message
@@ -650,7 +635,7 @@
{
// Given DataSet with undefined RiverLevelLow
DamProjectData damProjectData = CreateExampleDamProjectData();
- Scenario scenario = damProjectData.WaterBoard.Dikes[0].Locations[0].Scenarios[0];
+ Scenario scenario = damProjectData.WaterBoard.Dike.Locations[0].Scenarios[0];
scenario.RiverLevelLow = null;
DamFailureMechanismeCalculationSpecification currentSpecification = damProjectData.DamProjectCalculationSpecification.CurrentSpecification;
currentSpecification.FailureMechanismSystemType = failureMechanismSystemType;
@@ -798,13 +783,12 @@
FillAnalysisSpecification(damProjectData);
FillStabilityParameters(damProjectData);
damProjectData.WaterBoard = new WaterBoard();
- damProjectData.WaterBoard.Dikes = new List();
- damProjectData.WaterBoard.Dikes.Add(new Dike
+ damProjectData.WaterBoard.Dike = new Dike
{
MapForSoilGeometries2D = @"TestData\FillXMLInputFromDamUI"
- });
+ };
damProjectData.MaxCalculationCores = 3;
- Dike dike = damProjectData.WaterBoard.Dikes[0];
+ Dike dike = damProjectData.WaterBoard.Dike;
List surfaceLines = CreateSurfaceLines();
FillSoils(dike);
FillSoilProfiles1D(dike);
@@ -819,7 +803,6 @@
FillSensorData(damProjectData);
return damProjectData;
}
-
private void FillSensorData(DamProjectData damProjectData)
{
@@ -862,7 +845,7 @@
sensorData.SensorGroups.Add(sensorGroup1);
var sensorLocation1 = new SensorLocation
{
- Location = damProjectData.WaterBoard.Dikes[0].Locations[0],
+ Location = damProjectData.WaterBoard.Dike.Locations[0],
Group = sensorGroup1,
SourceTypePl1PlLineOffsetBelowDikeTopAtRiver = DataSourceTypeSensors.LocationData,
SourceTypePl1PlLineOffsetBelowDikeTopAtPolder = DataSourceTypeSensors.LocationData,
@@ -873,7 +856,7 @@
SourceTypePl1PlLineOffsetBelowDikeToeAtPolder = DataSourceTypeSensors.LocationData,
SourceTypePl1PlLineOffsetBelowShoulderBaseInside = DataSourceTypeSensors.LocationData
};
- damProjectData.WaterBoard.Dikes[0].Locations[0].SensorLocation = sensorLocation1;
+ damProjectData.WaterBoard.Dike.Locations[0].SensorLocation = sensorLocation1;
sensorData.SensorLocations.Add(sensorLocation1);
var sensor3 = new Sensor
@@ -900,7 +883,7 @@
sensorData.SensorGroups.Add(sensorGroup2);
var sensorLocation2 = new SensorLocation
{
- Location = damProjectData.WaterBoard.Dikes[0].Locations[0],
+ Location = damProjectData.WaterBoard.Dike.Locations[0],
Group = sensorGroup1,
SourceTypePl1PlLineOffsetBelowDikeTopAtRiver = DataSourceTypeSensors.LocationData,
SourceTypePl1PlLineOffsetBelowDikeTopAtPolder = DataSourceTypeSensors.LocationData,
@@ -911,7 +894,7 @@
SourceTypePl1PlLineOffsetBelowDikeToeAtPolder = DataSourceTypeSensors.LocationData,
SourceTypePl1PlLineOffsetBelowShoulderBaseInside = DataSourceTypeSensors.LocationData
};
- damProjectData.WaterBoard.Dikes[0].Locations[2].SensorLocation = sensorLocation2;
+ damProjectData.WaterBoard.Dike.Locations[2].SensorLocation = sensorLocation2;
sensorData.SensorLocations.Add(sensorLocation2);
}
@@ -1234,7 +1217,7 @@
private static void FillSegments(DamProjectData damProjectData)
{
const int segmentCount = 2;
- Dike dike = damProjectData.WaterBoard.Dikes[0];
+ Dike dike = damProjectData.WaterBoard.Dike;
for (var i = 0; i < segmentCount; i++)
{
var segment = new Segment
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data.Tests/DamProjectDataTests.cs
===================================================================
diff -u -r6812 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data.Tests/DamProjectDataTests.cs (.../DamProjectDataTests.cs) (revision 6812)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data.Tests/DamProjectDataTests.cs (.../DamProjectDataTests.cs) (revision 6823)
@@ -42,8 +42,8 @@
soil.ShearStrengthModel = shearStrengthModel;
var damProjectData = new DamProjectData();
damProjectData.WaterBoard = new WaterBoard();
- damProjectData.WaterBoard.Dikes.Add(new Dike());
- damProjectData.WaterBoard.Dikes[0].DamSoils.Add(soil);
+ damProjectData.WaterBoard.Dike = new Dike();
+ damProjectData.WaterBoard.Dike.DamSoils.Add(soil);
var damCalculationSpecification = new DamFailureMechanismeCalculationSpecification
{
FailureMechanismSystemType = failureMechanismSystemType
@@ -87,8 +87,8 @@
soil.ShearStrengthModel = shearStrengthModel;
var damProjectData = new DamProjectData();
damProjectData.WaterBoard = new WaterBoard();
- damProjectData.WaterBoard.Dikes.Add(new Dike());
- damProjectData.WaterBoard.Dikes[0].DamSoils.Add(soil);
+ damProjectData.WaterBoard.Dike = new Dike();
+ damProjectData.WaterBoard.Dike.DamSoils.Add(soil);
var damCalculationSpecification = new DamFailureMechanismeCalculationSpecification
{
FailureMechanismSystemType = failureMechanismSystemType
@@ -132,8 +132,8 @@
soil.ShearStrengthModel = shearStrengthModel;
var damProjectData = new DamProjectData();
damProjectData.WaterBoard = new WaterBoard();
- damProjectData.WaterBoard.Dikes.Add(new Dike());
- damProjectData.WaterBoard.Dikes[0].DamSoils.Add(soil);
+ damProjectData.WaterBoard.Dike = new Dike();
+ damProjectData.WaterBoard.Dike.DamSoils.Add(soil);
var damCalculationSpecification = new DamFailureMechanismeCalculationSpecification
{
FailureMechanismSystemType = failureMechanismSystemType
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProjectData.cs
===================================================================
diff -u -r6814 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProjectData.cs (.../DamProjectData.cs) (revision 6814)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProjectData.cs (.../DamProjectData.cs) (revision 6823)
@@ -136,12 +136,12 @@
waterBoardJob = new WaterBoardJob(waterBoard);
waterBoardJob.Subject = waterBoard;
- foreach (Dike dike in waterBoard.Dikes)
+ if (waterBoard.Dike != null)
{
- CompositeJob dikeJob = new DikeJob(dike);
+ CompositeJob dikeJob = new DikeJob(waterBoard.Dike);
waterBoardJob.Jobs.Add(dikeJob);
- foreach (Location location in dike.Locations)
+ foreach (Location location in waterBoard.Dike.Locations)
{
var locationJob = new LocationJob(location);
dikeJob.Jobs.Add(locationJob);
@@ -407,7 +407,7 @@
public bool HasResults()
{
- bool hasResults = waterBoard.Dikes.Count > 0 && waterBoardJob != null && waterBoardJob.Jobs.Count > 0;
+ bool hasResults = waterBoard.Dike != null && waterBoardJob != null && waterBoardJob.Jobs.Count > 0;
if (hasResults)
{
hasResults = GetNumberOfCalculatedJobs() > 0;
@@ -445,9 +445,9 @@
{
const string sourceName = "DamSoil";
var validationResults = new List();
- if (WaterBoard != null && WaterBoard.Dikes.Count > 0)
+ if (WaterBoard != null && WaterBoard.Dike != null)
{
- foreach (DamSoil damSoil in WaterBoard.Dikes[0].DamSoils)
+ foreach (DamSoil damSoil in WaterBoard.Dike.DamSoils)
{
validationResults.AddRange(Validator.ValidateProperty(damSoil, "AbovePhreaticLevel", sourceName));
validationResults.AddRange(Validator.ValidateProperty(damSoil, "BelowPhreaticLevel", sourceName));
@@ -617,13 +617,10 @@
{
if (locationJob.HasDesignScenarioResults)
{
- foreach (Dike dike in WaterBoard.Dikes)
+ if (WaterBoard.Dike.Locations.Contains(locationJob.Location))
{
- if (dike.Locations.Contains(locationJob.Location))
- {
- dike.UpdateLocation(locationJob.Location);
- break;
- }
+ WaterBoard.Dike.UpdateLocation(locationJob.Location);
+ break;
}
numberOfCalculatedJobs++;
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Memoryleaks/DamMemoryLeakTests.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Memoryleaks/DamMemoryLeakTests.cs (.../DamMemoryLeakTests.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Memoryleaks/DamMemoryLeakTests.cs (.../DamMemoryLeakTests.cs) (revision 6823)
@@ -129,7 +129,7 @@
var dike = new Dike();
list.Add(dike);
GetMonitoredChildren(dike); // Create 'leakable' Dike instance
- waterBoard.Dikes.Add(dike);
+ waterBoard.Dike = dike;
return list;
}
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/LocationJobTests.cs
===================================================================
diff -u -r6723 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/LocationJobTests.cs (.../LocationJobTests.cs) (revision 6723)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/LocationJobTests.cs (.../LocationJobTests.cs) (revision 6823)
@@ -48,7 +48,7 @@
[TestCase(FailureMechanismSystemType.Piping, StabilityModelType.UpliftVan, false, false)]
[TestCase(FailureMechanismSystemType.StabilityInside, StabilityModelType.Bishop, false, false)]
[TestCase(FailureMechanismSystemType.StabilityInside, StabilityModelType.BishopUpliftVan, false, false)]
- public void GivenValidResult_WhenDetermineIsUpliftVanNoUplift_ThenResultIsAsExpected(FailureMechanismSystemType failureMechanismSystemType,
+ public void GivenValidResult_WhenDetermineIsUpliftVanNoUplift_ThenResultIsAsExpected(FailureMechanismSystemType failureMechanismSystemType,
StabilityModelType stabilityModelType, bool isUplift, bool isExpected)
{
var calculationResult = new CsvExportData
@@ -63,5 +63,4 @@
bool isUpliftVanNoUplift = LocationJob.IsUpliftVanNoUplift(calculationResult);
Assert.That(isUpliftVanNoUplift, Is.EqualTo(isExpected));
}
-
}
\ No newline at end of file
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.TestHelper/ComputeHelper.cs
===================================================================
diff -u -r6817 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.TestHelper/ComputeHelper.cs (.../ComputeHelper.cs) (revision 6817)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.TestHelper/ComputeHelper.cs (.../ComputeHelper.cs) (revision 6823)
@@ -59,8 +59,8 @@
out List logMessages)
{
using DamProjectData damProjectData = ProjectLoader.LoadProjectData(projectFilename);
- Assert.That(damProjectData.WaterBoard.Dikes.Count, Is.EqualTo(1));
- Dike dike = damProjectData.WaterBoard.Dikes[0];
+ Assert.That(damProjectData.WaterBoard.Dike, Is.Not.Null);
+ Dike dike = damProjectData.WaterBoard.Dike;
Assert.That(dike.Locations, Has.Count.EqualTo(computeStabilityProjectParameters.ExpectedLocations));
// Specify calculation
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.StixFileReader.Tests/StixFileReaderTest.cs
===================================================================
diff -u -r6585 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.StixFileReader.Tests/StixFileReaderTest.cs (.../StixFileReaderTest.cs) (revision 6585)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.StixFileReader.Tests/StixFileReaderTest.cs (.../StixFileReaderTest.cs) (revision 6823)
@@ -24,7 +24,6 @@
using Deltares.Geometry;
using Deltares.Geotechnics.Soils;
using Deltares.Standard.Validation;
-using DGeoSuite.Components.Persistence;
using NUnit.Framework;
namespace Deltares.Dam.StixFileReader.Tests;
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/LoadCompatibilityTest.cs
===================================================================
diff -u -r6542 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/LoadCompatibilityTest.cs (.../LoadCompatibilityTest.cs) (revision 6542)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/LoadCompatibilityTest.cs (.../LoadCompatibilityTest.cs) (revision 6823)
@@ -88,10 +88,7 @@
damProject.AssignGeometry2DMapnameIfNotAssigned(Path.Combine(damProjectFolder, dataSourceContainer.MapSoilProfile2D));
}
- var dikeRings = new List
- {
- "Dike from CSV"
- };
+ var dikeRings = "Dike from CSV";
damProject.Import(damProjectFolder, dataSourceContainer, dikeRings, DamProjectType.Design, null);
// Save in current XML format
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs
===================================================================
diff -u -r6817 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 6817)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 6823)
@@ -55,7 +55,7 @@
{
// First of all, check that there is a dike
ThrowHelper.ThrowIfArgumentNull(damProjectData.WaterBoard, nameof(damProjectData.WaterBoard), StringResourceNames.NoDikeDefined);
- Dike dike = damProjectData.WaterBoard.Dikes[0];
+ Dike dike = damProjectData.WaterBoard.Dike;
// Process locations
string soilProfileDirectory = Path.Combine(damProjectData.ProjectPath, dike.MapForSoilGeometries2D);
var soilProfiles2DToSerialize = new List();
@@ -445,12 +445,7 @@
private static void ValidateDamProjectData(DamProjectData damProjectData, List selectedLocations)
{
- if (damProjectData.WaterBoard.Dikes == null || damProjectData.WaterBoard.Dikes.Count != 1)
- {
- throw new ArgumentException(Resources.DikeShouldContainExactly1Dike);
- }
-
- Dike dike = damProjectData.WaterBoard.Dikes[0];
+ Dike dike = damProjectData.WaterBoard.Dike;
ThrowHelper.ThrowIfArgumentNull(dike.Locations, nameof(dike.Locations), StringResourceNames.NoLocationsDefined);
// Following situation should never occur in the UI. Tested because of the check on RiverLevelLow in the code below
DamFailureMechanismeCalculationSpecification currentSpecification = damProjectData.DamProjectCalculationSpecification.CurrentSpecification;
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlInput.cs
===================================================================
diff -u -r6817 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 6817)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 6823)
@@ -56,9 +56,8 @@
}
damProjectData.WaterBoard = new WaterBoard();
- damProjectData.WaterBoard.Dikes = new List();
- damProjectData.WaterBoard.Dikes.Add(new Dike());
- Dike dike = damProjectData.WaterBoard.Dikes[0];
+ damProjectData.WaterBoard.Dike = new Dike();
+ Dike dike = damProjectData.WaterBoard.Dike;
TransferAnalysisSpecification(input, damProjectData);
TransferStabilityParameters(input, damProjectData);
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterDataShapeFilesTests.cs
===================================================================
diff -u -r6669 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterDataShapeFilesTests.cs (.../DataPluginImporterDataShapeFilesTests.cs) (revision 6669)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterDataShapeFilesTests.cs (.../DataPluginImporterDataShapeFilesTests.cs) (revision 6823)
@@ -56,10 +56,9 @@
public void CanRetrieveTrafficLoadFromDataShapeFile()
{
SetupGrootSalland();
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(dikeRingId, Location275Id);
+ IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(Location275Id);
NameValueParameter[] nameValueParameters = locationDetails as NameValueParameter[] ?? locationDetails.ToArray();
Assert.That(nameValueParameters.Count(), Is.GreaterThan(0));
@@ -70,10 +69,9 @@
public void CanRetrieveTrafficLoadDistributionAngleFromDataShapeFile()
{
SetupGrootSalland();
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(dikeRingId, Location275Id);
+ IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(Location275Id);
NameValueParameter[] nameValueParameters = locationDetails as NameValueParameter[] ?? locationDetails.ToArray();
Assert.That(nameValueParameters.Count(), Is.GreaterThan(0));
@@ -84,15 +82,14 @@
public void CanRetrieveTrafficLoadDistributionAngleFromDataShapeFileInCombinationWithCrossSectionShapeFile()
{
SetupHHNK_WILMEBREEK();
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(dikeRingId, Location1Id);
+ IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(Location1Id);
NameValueParameter[] nameValueParameters = locationDetails as NameValueParameter[] ?? locationDetails.ToArray();
Assert.That(nameValueParameters.Count(), Is.GreaterThan(0));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("TrafficLoadDistributionAngle")).ParameterValue, Is.EqualTo("25"));
- locationDetails = dataPluginImporter.GetLocationDetails(dikeRingId, Location22Id);
+ locationDetails = dataPluginImporter.GetLocationDetails(Location22Id);
Assert.That(locationDetails.First(
x => x.ParameterName.Equals("TrafficLoadDistributionAngle")).ParameterValue, Is.EqualTo("32"));
}
@@ -114,13 +111,12 @@
public void CanRetrievePenetrationLengthFromDataShapeFile()
{
SetupGrootSalland();
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(dikeRingId, Location275Id);
+ IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(Location275Id);
Assert.That(locationDetails.First(
x => x.ParameterName.Equals("PenetrationLength")).ParameterValue, Is.EqualTo("-1.5"));
- locationDetails = dataPluginImporter.GetLocationDetails(dikeRingId, Location475Id);
+ locationDetails = dataPluginImporter.GetLocationDetails(Location475Id);
Assert.That(locationDetails.First(
x => x.ParameterName.Equals("PenetrationLength")).ParameterValue, Is.EqualTo("-1"));
}
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProject.cs
===================================================================
diff -u -r6813 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProject.cs (.../DamProject.cs) (revision 6813)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProject.cs (.../DamProject.cs) (revision 6823)
@@ -21,7 +21,6 @@
using System;
using System.Collections.Generic;
-using System.Globalization;
using System.IO;
using System.Linq;
using Deltares.Dam.Data.DataPlugins.Configuration;
@@ -140,7 +139,7 @@
/// The progress.
///
public object Import(string dataFolder, DataSourceContainer dataSourceContainer,
- IEnumerable dikeRingIds, DamProjectType damProjectType, ProgressDelegate progress)
+ string dikeRingIds, DamProjectType damProjectType, ProgressDelegate progress)
{
string damProjectFolder = Path.GetDirectoryName(projectFileName);
@@ -302,29 +301,24 @@
/// Name of the map.
public void AssignGeometry2DMapnameIfNotAssigned(string mapName)
{
- foreach (Dike dike in damProjectData.WaterBoard.Dikes)
+ if (String.IsNullOrEmpty(damProjectData.WaterBoard.Dike.MapForSoilGeometries2D))
{
- if (String.IsNullOrEmpty(dike.MapForSoilGeometries2D))
+ damProjectData.WaterBoard.Dike.MapForSoilGeometries2D = mapName;
+ foreach (Location location in damProjectData.WaterBoard.Dike.Locations)
{
- dike.MapForSoilGeometries2D = mapName;
- foreach (Location location in dike.Locations)
- {
- location.MapForSoilGeometries2D = mapName;
- }
+ location.MapForSoilGeometries2D = mapName;
}
}
}
///
- /// Create a destination filename for new location of soilmaterials database
+ /// Create a destination filename for new location of soil materials database
///
///
- ///
- ///
///
- public static string CreateNewGeometry2DMapname(string projectFilename, string orgMapName, int dikeIndex)
+ public static string CreateNewGeometry2DMapname(string projectFilename)
{
- string destMapname = Path.GetFileNameWithoutExtension(projectFilename) + ".geometries2D." + dikeIndex.ToString(CultureInfo.InvariantCulture) + @"\";
+ string destMapname = Path.GetFileNameWithoutExtension(projectFilename) + ".geometries2D" + @"\";
return destMapname;
}
@@ -504,31 +498,28 @@
/// The directory in which the .defx file resides.
private void EnsureGeometries2DMapWithProject(string fileName, string projectDirectory, string dataSourceDirectory)
{
- for (var dikeIndex = 0; dikeIndex < damProjectData.WaterBoard.Dikes.Count; dikeIndex++)
+ if (!String.IsNullOrEmpty(damProjectData.WaterBoard.Dike.MapForSoilGeometries2D))
{
- if (!String.IsNullOrEmpty(damProjectData.WaterBoard.Dikes[dikeIndex].MapForSoilGeometries2D))
- {
- string mapForSoilGeometries = damProjectData.WaterBoard.Dikes[dikeIndex].MapForSoilGeometries2D;
- string sourceMapName = DetermineGeometriesSource(mapForSoilGeometries, projectDirectory, dataSourceDirectory);
+ string mapForSoilGeometries = damProjectData.WaterBoard.Dike.MapForSoilGeometries2D;
+ string sourceMapName = DetermineGeometriesSource(mapForSoilGeometries, projectDirectory, dataSourceDirectory);
- // Only copy files if map of geometries is assigned and exists
- if (!String.IsNullOrEmpty(sourceMapName) && Directory.Exists(sourceMapName))
+ // Only copy files if map of geometries is assigned and exists
+ if (!String.IsNullOrEmpty(sourceMapName) && Directory.Exists(sourceMapName))
+ {
+ string destMapname = CreateNewGeometry2DMapname(fileName);
+ string fullFilename = Path.GetFullPath(fileName);
+ string destFullMapname = Path.Combine(Path.GetDirectoryName(fullFilename), destMapname);
+ string orgFullMapname = Path.GetFullPath(sourceMapName);
+ if (!orgFullMapname.Equals(destFullMapname))
{
- string destMapname = CreateNewGeometry2DMapname(fileName, sourceMapName, dikeIndex);
- string fullFilename = Path.GetFullPath(fileName);
- string destFullMapname = Path.Combine(Path.GetDirectoryName(fullFilename), destMapname);
- string orgFullMapname = Path.GetFullPath(sourceMapName);
- if (!orgFullMapname.Equals(destFullMapname))
- {
- CopyGeometries(orgFullMapname, destFullMapname);
- }
+ CopyGeometries(orgFullMapname, destFullMapname);
+ }
- // Store the relative path to the 2d-geometries
- damProjectData.WaterBoard.Dikes[dikeIndex].MapForSoilGeometries2D = destMapname;
- foreach (Location location in damProjectData.WaterBoard.Dikes[dikeIndex].Locations)
- {
- location.MapForSoilGeometries2D = destMapname;
- }
+ // Store the relative path to the 2d-geometries
+ damProjectData.WaterBoard.Dike.MapForSoilGeometries2D = destMapname;
+ foreach (Location location in damProjectData.WaterBoard.Dike.Locations)
+ {
+ location.MapForSoilGeometries2D = destMapname;
}
}
}
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DataPlugins/IDataPlugin.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DataPlugins/IDataPlugin.cs (.../IDataPlugin.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DataPlugins/IDataPlugin.cs (.../IDataPlugin.cs) (revision 6823)
@@ -78,55 +78,55 @@
DamProjectType DamProjectType { set; }
void SetDataSources(string dataFolder, IEnumerable dataSources);
+
+ string GetDikeRingIdList();
- IEnumerable GetDikeRingIdList();
-
void ImportDataForDikeRings(ProgressDelegate progress);
- Info GetDikeRingInfo(string dikeRingId);
+ Info GetDikeRingInfo();
- IEnumerable GetDikeParameters(string dikeRingId);
+ IEnumerable GetDikeParameters();
- IEnumerable GetLocationIdList(string dikeRingId);
+ IEnumerable GetLocationIdList();
- Info GetLocationInfo(string dikeRingId, string locationId);
+ Info GetLocationInfo( string locationId);
- IEnumerable GetLocationDetails(string dikeRingId, string locationId);
+ IEnumerable GetLocationDetails(string locationId);
- IEnumerable GetSurfaceLineIdList(string dikeRingId);
+ IEnumerable GetSurfaceLineIdList();
- IList GetSurfaceLinePoints(string dikeRingId, string surfaceLineId);
+ IList GetSurfaceLinePoints(string surfaceLineId);
- IEnumerable GetSurfaceLineCharacteristicPoints(string dikeRingId, string surfaceLineId);
+ IEnumerable GetSurfaceLineCharacteristicPoints(string surfaceLineId);
- IEnumerable GetSegmentIdList(string dikeRingId);
+ IEnumerable GetSegmentIdList();
- IEnumerable GetProfile1DIdListForSegment(string dikeRingId, string segmentId, FailureMechanismSystemType segmentFailureMechanismType);
+ IEnumerable GetProfile1DIdListForSegment(string segmentId, FailureMechanismSystemType segmentFailureMechanismType);
- IEnumerable GetProfile2DIdListForSegment(string dikeRingId, string segmentId, FailureMechanismSystemType segmentFailureMechanismType);
+ IEnumerable GetProfile2DIdListForSegment(string segmentId, FailureMechanismSystemType segmentFailureMechanismType);
- IEnumerable GetSegmentProfile1DDetails(string dikeRingId, string segmentId, string profileId, FailureMechanismSystemType failureMechanismSystemType);
+ IEnumerable GetSegmentProfile1DDetails(string segmentId, string profileId, FailureMechanismSystemType failureMechanismSystemType);
- IEnumerable GetSegmentProfile2DDetails(string dikeRingId, string segmentId, string profileId, FailureMechanismSystemType failureMechanismSystemType);
+ IEnumerable GetSegmentProfile2DDetails(string segmentId, string profileId, FailureMechanismSystemType failureMechanismSystemType);
- IEnumerable GetSoilProfile1DIdList(string dikeRingId);
+ IEnumerable GetSoilProfile1DIdList();
- DpSoilProfile GetSoilProfile1DDetails(string dikeRingId, string soilProfile1DId);
+ DpSoilProfile GetSoilProfile1DDetails(string soilProfile1DId);
- IEnumerable GetSoilProfile2DIdList(string dikeRingId);
+ IEnumerable GetSoilProfile2DIdList();
- string GetSoilProfile2DDetails(string dikeRingId, string soilProfile2DId);
+ string GetSoilProfile2DDetails(string soilProfile2DId);
- IEnumerable GetSoilIdList(string dikeRingId);
+ IEnumerable GetSoilIdList();
- IEnumerable GetSoilDetails(string dikeRingId, string soilId);
+ IEnumerable GetSoilDetails(string soilId);
string GetMapGeometry(string mapGeometryId);
IEnumerable GetMapGeometryAttributes(string mapGeometryId);
- IEnumerable GetScenarioList(string dikeRingId, string name);
- IEnumerable GetScenarioDetails(string dikeRingId, string name, string scenarioId);
+ IEnumerable GetScenarioList(string name);
+ IEnumerable GetScenarioDetails(string name, string scenarioId);
- void DisposeImportedItem(string dikeRingId);
+ void DisposeImportedItem();
}
\ No newline at end of file
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlOutput.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlOutput.cs (.../FillDamUiFromXmlOutput.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlOutput.cs (.../FillDamUiFromXmlOutput.cs) (revision 6823)
@@ -145,7 +145,7 @@
private static void CreateDesignResultsFromOutput(Output output, DamProjectData damProjectData)
{
- if (damProjectData.WaterBoard.Dikes[0] != null)
+ if (damProjectData.WaterBoard.Dike != null)
{
// Design results
damProjectData.DesignCalculations = new List();
@@ -161,7 +161,7 @@
{
DamFailureMechanismeCalculation = damProjectData.DamProjectCalculationSpecification.CurrentSpecification, // vanuit invoer
AnalysisType = DamProjectCalculationSpecification.SelectedAnalysisType, //is vanuit invoer
- DikeName = damProjectData.WaterBoard.Dikes[0].Name, // is de enige voor nu
+ DikeName = damProjectData.WaterBoard.Dike.Name,
CalculationResult = ConversionHelper.ConvertToCalculationResult(designResult.CalculationResult),
BaseFileName = designResult.BaseFileName,
CalculationSubDir = designResult.CalculationSubDir,
@@ -368,7 +368,7 @@
private static SoilProfile1D GetSoilProfileByName(DamProjectData damProjectData, string profileName)
{
- IList soilProfiles1D = damProjectData.WaterBoard.Dikes[0].SoilProfiles;
+ IList soilProfiles1D = damProjectData.WaterBoard.Dike.SoilProfiles;
foreach (SoilProfile1D soilProfile1D in soilProfiles1D)
{
if (soilProfile1D.Name == profileName)
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardPostProcessRelativeProfilesTest.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardPostProcessRelativeProfilesTest.cs (.../WaterBoardPostProcessRelativeProfilesTest.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardPostProcessRelativeProfilesTest.cs (.../WaterBoardPostProcessRelativeProfilesTest.cs) (revision 6823)
@@ -119,7 +119,7 @@
var waterBoard = new WaterBoard();
waterBoard.Segments.Add(segment);
- waterBoard.Dikes.Add(dike);
+ waterBoard.Dike = dike;
return waterBoard;
}
@@ -129,10 +129,10 @@
{
WaterBoardPostProcessRelativeProfiles.CreateAbsoluteProfiles(waterBoard, CharacteristicPointType.DikeToeAtPolder);
// Is location soil profile moved
- SoilProfile1D soilProfile1DLocation = waterBoard.Dikes[0].Locations[0].Segment.SoilProfileProbabilities[0].SoilProfile;
+ SoilProfile1D soilProfile1DLocation = waterBoard.Dike.Locations[0].Segment.SoilProfileProbabilities[0].SoilProfile;
AssertSoilProfile1D(offset, soilProfile1DLocation);
// Is moved dike soil profile present in dike.SoilProfileList
- SoilProfile1D soilProfile1DDike = waterBoard.Dikes[0].SoilProfiles.FirstOrDefault(p => p.Name.Equals(soilProfile1DLocation.Name));
+ SoilProfile1D soilProfile1DDike = waterBoard.Dike.SoilProfiles.FirstOrDefault(p => p.Name.Equals(soilProfile1DLocation.Name));
AssertSoilProfile1D(offset, soilProfile1DDike);
}
}
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterCsvTests.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterCsvTests.cs (.../DataPluginImporterCsvTests.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterCsvTests.cs (.../DataPluginImporterCsvTests.cs) (revision 6823)
@@ -59,27 +59,25 @@
[Category("Slow")]
public void CanImportDikeData()
{
- IEnumerable dikeList = dataPluginImporter.GetDikeRingIdList();
- Assert.That(dikeList.Count(), Is.EqualTo(1));
- string dikeRingId = dikeList.FirstOrDefault();
+ string dikeRingId = dataPluginImporter.GetDikeRingIdList();
dataPluginImporter.ImportDataForDikeRings(null);
- Info dikeInfo = dataPluginImporter.GetDikeRingInfo(dikeRingId);
+ Info dikeInfo = dataPluginImporter.GetDikeRingInfo();
Assert.That(dikeInfo.Name, Is.EqualTo("dijkring10"));
}
[Test]
public void CanRetrieveLocationData()
{
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
+ string dikeRingId = dataPluginImporter.GetDikeRingIdList();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable locationIdList = dataPluginImporter.GetLocationIdList(dikeRingId);
+ IEnumerable locationIdList = dataPluginImporter.GetLocationIdList();
Assert.That(locationIdList.Count(), Is.EqualTo(24));
- Info locationInfo = dataPluginImporter.GetLocationInfo(dikeRingId, location18_6Id);
+ Info locationInfo = dataPluginImporter.GetLocationInfo(location18_6Id);
Assert.That(locationInfo.Name, Is.EqualTo(location18_6Id));
- IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(dikeRingId, location18_6Id);
+ IEnumerable locationDetails = dataPluginImporter.GetLocationDetails(location18_6Id);
Assert.That(locationDetails.Any(), Is.True);
Assert.That(locationDetails.FirstOrDefault(x => x.ParameterName.Equals("SurfaceLineId")).ParameterValue, Is.EqualTo("dijkring10_dwp18_6"));
Assert.That(locationDetails.FirstOrDefault(x => x.ParameterName.Equals("SegmentId")).ParameterValue, Is.EqualTo("segment_dijkring10_dwp18_6"));
@@ -90,22 +88,22 @@
[Test]
public void CanRetrieveSegmentData()
{
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
+ string dikeRingId = dataPluginImporter.GetDikeRingIdList();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable segmentIdList = dataPluginImporter.GetSegmentIdList(dikeRingId);
+ IEnumerable segmentIdList = dataPluginImporter.GetSegmentIdList();
Assert.That(segmentIdList.Count(), Is.EqualTo(24));
- IEnumerable segmentProfile1DIdList = dataPluginImporter.GetProfile1DIdListForSegment(dikeRingId, segment05_4Id, FailureMechanismSystemType.StabilityInside);
+ IEnumerable segmentProfile1DIdList = dataPluginImporter.GetProfile1DIdListForSegment(segment05_4Id, FailureMechanismSystemType.StabilityInside);
Assert.That(segmentProfile1DIdList.Count(), Is.EqualTo(0));
- IEnumerable segmentProfile2DIdList = dataPluginImporter.GetProfile2DIdListForSegment(dikeRingId, segment05_4Id, FailureMechanismSystemType.StabilityInside);
+ IEnumerable segmentProfile2DIdList = dataPluginImporter.GetProfile2DIdListForSegment(segment05_4Id, FailureMechanismSystemType.StabilityInside);
Assert.That(segmentProfile2DIdList.Count(), Is.EqualTo(1));
string soilProfile2DId = segmentProfile2DIdList.FirstOrDefault();
Assert.That(soilProfile2DId, Is.EqualTo("10Y_054_STBI.stix"));
- IEnumerable profileDetails = dataPluginImporter.GetSegmentProfile2DDetails(dikeRingId, segment05_4Id, soilProfile2DId, FailureMechanismSystemType.StabilityInside);
+ IEnumerable profileDetails = dataPluginImporter.GetSegmentProfile2DDetails(segment05_4Id, soilProfile2DId, FailureMechanismSystemType.StabilityInside);
Assert.That(profileDetails.FirstOrDefault(x => x.ParameterName.Equals("Probability")).ParameterValue, Is.EqualTo("100"));
Assert.That(profileDetails.FirstOrDefault(x => x.ParameterName.Equals("FailureMechanismType")).ParameterValue, Is.EqualTo("StabilityInside"));
}
@@ -116,14 +114,13 @@
const double cToleranceCoordinate = 0.001;
// Check if surfacelines available
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable surfaceLineIdList = dataPluginImporter.GetSurfaceLineIdList(dikeRingId);
+ IEnumerable surfaceLineIdList = dataPluginImporter.GetSurfaceLineIdList();
Assert.That(surfaceLineIdList.Count(), Is.EqualTo(13));
// Check begin- and endpoint of 1 surfaceline
- IList surfaceLinePoints = dataPluginImporter.GetSurfaceLinePoints(dikeRingId, surfaceline40_0Id);
+ IList surfaceLinePoints = dataPluginImporter.GetSurfaceLinePoints(surfaceline40_0Id);
Assert.That(surfaceLinePoints.Count(), Is.GreaterThan(0));
Assert.That(surfaceLinePoints[0].X, Is.EqualTo(0.0).Within(cToleranceCoordinate));
Assert.That(surfaceLinePoints[0].Y, Is.EqualTo(0.0).Within(cToleranceCoordinate));
@@ -134,7 +131,7 @@
Assert.That(surfaceLinePoints[lastPointIndex].Z, Is.EqualTo(-0.36).Within(cToleranceCoordinate));
// Check specific characteristic points of 1 surfaceline
- IEnumerable surfaceLineCharacteristicPoints = dataPluginImporter.GetSurfaceLineCharacteristicPoints(dikeRingId, surfaceline40_0Id);
+ IEnumerable surfaceLineCharacteristicPoints = dataPluginImporter.GetSurfaceLineCharacteristicPoints(surfaceline40_0Id);
Assert.That(surfaceLineIdList.Count(), Is.EqualTo(13));
Assert.That(surfaceLineCharacteristicPoints.Count(), Is.GreaterThan(0));
DpCharacteristicPoint pointSurfaceLevelOutside =
@@ -153,12 +150,11 @@
const double cToleranceCoordinate = 0.001;
// Check if soilprofiles available
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- IEnumerable soilProfile1DIdList = dataPluginImporter.GetSoilProfile1DIdList(dikeRingId);
+ IEnumerable soilProfile1DIdList = dataPluginImporter.GetSoilProfile1DIdList();
Assert.That(soilProfile1DIdList.Count(), Is.EqualTo(26));
- DpSoilProfile soilProfile = dataPluginImporter.GetSoilProfile1DDetails(dikeRingId, soilprofile10Y_149_STBI_pId);
+ DpSoilProfile soilProfile = dataPluginImporter.GetSoilProfile1DDetails(soilprofile10Y_149_STBI_pId);
Assert.That(soilProfile.Layers.Count(), Is.EqualTo(4));
Assert.That(soilProfile.Layers[0].TopLevel, Is.EqualTo(60.0).Within(cToleranceCoordinate));
Assert.That(soilProfile.Layers[0].SoilName, Is.EqualTo("klei"));
@@ -175,13 +171,12 @@
{
const double cToleranceDimension = 0.001;
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- List scenarioList = dataPluginImporter.GetScenarioList(dikeRingId, location18_6Id).ToList();
+ List scenarioList = dataPluginImporter.GetScenarioList(location18_6Id).ToList();
Assert.That(scenarioList.Count(), Is.EqualTo(1));
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, location18_6Id, "1");
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(location18_6Id, "1");
foreach (NameValueParameter nameValue in scenarioDetails)
{
switch (nameValue.ParameterName)
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoard.cs
===================================================================
diff -u -r6815 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoard.cs (.../WaterBoard.cs) (revision 6815)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoard.cs (.../WaterBoard.cs) (revision 6823)
@@ -36,7 +36,6 @@
public class WaterBoard : IVisibleEnabled, IDisposable
{
private readonly FeatureRepository backgroundRepository;
- private IList dikes;
private List locations;
private IList featureList;
private IList segments;
@@ -45,7 +44,6 @@
public WaterBoard()
{
- dikes = new List();
featureList = new List();
backgroundRepository = new FeatureRepository();
segments = new List();
@@ -75,12 +73,7 @@
{
get
{
- if (dike != null)
- {
- return dike;
- }
-
- return dikes.Count > 0 ? dikes[0] : null;
+ return dike;
}
set
{
@@ -103,19 +96,6 @@
}
}
- [Validate]
- public virtual IList Dikes
- {
- get
- {
- return dikes;
- }
- set
- {
- dikes = value;
- }
- }
-
[XmlIgnore]
[Browsable(false)]
[ReadOnly(true)]
@@ -127,9 +107,9 @@
if (locations == null)
{
locations = new List();
- foreach (Dike dike in Dikes)
+ if (Dike != null)
{
- locations.AddRange(dike.Locations);
+ locations.AddRange(Dike.Locations);
}
}
@@ -192,10 +172,7 @@
public void Dispose()
{
- foreach (Dike dike in Dikes)
- {
- dike.Dispose();
- }
+ Dike?.Dispose();
}
public bool IsVisible(string property)
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DikeCoordinateSystemConverterTest.cs
===================================================================
diff -u -r6795 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DikeCoordinateSystemConverterTest.cs (.../DikeCoordinateSystemConverterTest.cs) (revision 6795)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DikeCoordinateSystemConverterTest.cs (.../DikeCoordinateSystemConverterTest.cs) (revision 6823)
@@ -130,7 +130,6 @@
surfaceline.AddCharacteristicPoint(new GeometryPoint(10100.00, 20050.00, 10.0));
return surfaceline;
}
-
///
/// Checks converted local surface line with reference surface line
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterTests.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterTests.cs (.../DataPluginImporterTests.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DataPluginImporterTests.cs (.../DataPluginImporterTests.cs) (revision 6823)
@@ -139,17 +139,16 @@
public void ValuesFromShapeFileOverwriteValuesFromLocationsCsv()
{
SetupInvoer1WithShapeFiles();
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- string scenarioIdOne = dataPluginImporter.GetScenarioList(dikeRingId, Location1Id).FirstOrDefault();
- NameValueParameter[] scenarioDetailsOne = dataPluginImporter.GetScenarioDetails(dikeRingId, Location1Id, scenarioIdOne).ToArray();
+ string scenarioIdOne = dataPluginImporter.GetScenarioList(Location1Id).FirstOrDefault();
+ NameValueParameter[] scenarioDetailsOne = dataPluginImporter.GetScenarioDetails(Location1Id, scenarioIdOne).ToArray();
Assert.That(scenarioDetailsOne, Is.Not.Empty);
NameValueParameter headPl2ValueOne = scenarioDetailsOne.SingleOrDefault(x => x.ParameterName.Equals("HeadPL2"));
Assert.That(headPl2ValueOne.ParameterValue, Is.EqualTo("-5.37"));
- string scenarioIdTwo = dataPluginImporter.GetScenarioList(dikeRingId, Location2Id).FirstOrDefault();
- NameValueParameter[] scenarioDetailsTwo = dataPluginImporter.GetScenarioDetails(dikeRingId, Location2Id, scenarioIdTwo).ToArray();
+ string scenarioIdTwo = dataPluginImporter.GetScenarioList(Location2Id).FirstOrDefault();
+ NameValueParameter[] scenarioDetailsTwo = dataPluginImporter.GetScenarioDetails(Location2Id, scenarioIdTwo).ToArray();
Assert.That(scenarioDetailsTwo, Is.Not.Empty);
NameValueParameter headPl2ValueTwo = scenarioDetailsTwo.SingleOrDefault(x => x.ParameterName.Equals("HeadPL2"));
Assert.That(headPl2ValueTwo.ParameterValue, Is.EqualTo("-5.37"));
@@ -168,16 +167,15 @@
public void ValuesFromLocationsCsvAreCopiedToScenarioIfNotDefinedInScenariosCsvOrShapeFile()
{
SetupInvoer1WithoutShapeFiles();
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, Location1Id).FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, Location1Id, scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList(Location1Id).FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(Location1Id, scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.Any(), Is.True);
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("-99"));
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, Location2Id, scenarioId);
+ scenarioDetails = dataPluginImporter.GetScenarioDetails(Location2Id, scenarioId);
Assert.That(scenarioDetails.First(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("-99"));
}
@@ -194,16 +192,15 @@
public void ValuesFromShapeFileAreCopiedToScenarioIfNotDefinedInScenariosCsv()
{
SetupInvoer1WithShapeFiles();
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, Location1Id).FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, Location1Id, scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList(Location1Id).FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(Location1Id, scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.Any(), Is.True);
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("-3.651"));
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, Location2Id, scenarioId);
+ scenarioDetails = dataPluginImporter.GetScenarioDetails(Location2Id, scenarioId);
Assert.That(scenarioDetails.First(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("-3.632"));
}
@@ -240,16 +237,15 @@
dataPluginImporter = new DataPluginImporter();
dataPluginImporter.SetDataSources("", srcDataSources);
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// Expected: The values of location are used for scenario, because it was not specified in scenarios.csv
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, "RK210-560").FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, "RK210-560", scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList("RK210-560").FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails("RK210-560", scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RiverLevel")).ParameterValue, Is.EqualTo("1.2"));
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, "RK210-570").FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, "RK210-570", scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList("RK210-570").FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails("RK210-570", scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RiverLevel")).ParameterValue, Is.EqualTo("2.2"));
// Expected: no error messages
@@ -289,16 +285,15 @@
dataPluginImporter = new DataPluginImporter();
dataPluginImporter.SetDataSources("", srcDataSources);
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// Expected: The values of scenarios are used for scenario
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, "RK210-560").FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, "RK210-560", scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList("RK210-560").FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails("RK210-560", scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RiverLevel")).ParameterValue, Is.EqualTo("0.1"));
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, "RK210-570").FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, "RK210-570", scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList("RK210-570").FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails("RK210-570", scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RiverLevel")).ParameterValue, Is.EqualTo("0.2"));
// Expected: no error messages
@@ -338,16 +333,15 @@
dataPluginImporter = new DataPluginImporter();
dataPluginImporter.SetDataSources("", srcDataSources);
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// Expected: The values are null
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, "RK210-560").FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, "RK210-560", scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList("RK210-560").FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails("RK210-560", scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RiverLevel")).ParameterValue, Is.EqualTo(null));
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, "RK210-570").FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, "RK210-570", scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList("RK210-570").FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails("RK210-570", scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RiverLevel")).ParameterValue, Is.EqualTo(null));
// Expected: no error messages
@@ -386,11 +380,10 @@
File.Copy(Path.Combine(testDataFolderCsv, "scenarios_basic.csv"), Path.Combine(importFolder, "scenarios.csv"));
// create importer
SetupInvoerHemPolderWithoutShapeFiles(importFolder);
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// check values for location 1
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId1).FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId1, scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId1).FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId1, scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo(null));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo(null));
@@ -411,8 +404,8 @@
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityInnerSlope")).ParameterValue, Is.EqualTo("1"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityOuterSlope")).ParameterValue, Is.EqualTo("1"));
// check values for location 2
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId2).FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId2, scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId2).FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId2, scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo(null));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo(null));
@@ -466,11 +459,10 @@
File.Copy(Path.Combine(testDataFolderCsv, "scenarios_basic.csv"), Path.Combine(importFolder, "scenarios.csv"));
// create importer
SetupInvoerHemPolderWithoutShapeFiles(importFolder);
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// check values for location 1
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId1).FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId1, scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId1).FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId1, scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("0.11"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("2.11"));
@@ -491,8 +483,8 @@
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityInnerSlope")).ParameterValue, Is.EqualTo("1.12"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityOuterSlope")).ParameterValue, Is.EqualTo("1.14"));
// check values for location 2
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId2).FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId2, scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId2).FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId2, scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("1.11"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("3.11"));
@@ -554,11 +546,10 @@
// create importer
SetupInvoerHemPolderWithShapeFiles(importFolder, "LijnScenario.shp");
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// check values for location 1
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId1).FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId1, scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId1).FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId1, scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("1.99"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("3.99"));
@@ -579,8 +570,8 @@
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityInnerSlope")).ParameterValue, Is.EqualTo("0.63"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityOuterSlope")).ParameterValue, Is.EqualTo("0.66"));
// check values for location 2
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId2).FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId2, scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId2).FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId2, scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("0.99"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("2.99"));
@@ -642,11 +633,10 @@
// create importer
SetupInvoerHemPolderWithShapeFiles(importFolder, "VlakScenario.shp");
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// check values for location 1
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId1).FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId1, scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId1).FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId1, scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("0.9"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("2.9"));
@@ -667,8 +657,8 @@
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityInnerSlope")).ParameterValue, Is.EqualTo("0.83"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityOuterSlope")).ParameterValue, Is.EqualTo("0.85"));
// check values for location 2
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId2).FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId2, scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId2).FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId2, scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("1.9"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("3.9"));
@@ -730,11 +720,10 @@
// create importer
SetupInvoerHemPolderWithShapeFiles(importFolder, "LijnScenario.shp");
- string dikeRingId = dataPluginImporter.GetDikeRingIdList().FirstOrDefault();
dataPluginImporter.ImportDataForDikeRings(null);
// check values for location 1
- string scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId1).FirstOrDefault();
- IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId1, scenarioId);
+ string scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId1).FirstOrDefault();
+ IEnumerable scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId1, scenarioId);
NameValueParameter[] nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("0.25"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("2.25"));
@@ -755,8 +744,8 @@
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityInnerSlope")).ParameterValue, Is.EqualTo("0.94"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("RequiredSafetyFactorStabilityOuterSlope")).ParameterValue, Is.EqualTo("0.95"));
// check values for location 2
- scenarioId = dataPluginImporter.GetScenarioList(dikeRingId, HemPolderLocationId2).FirstOrDefault();
- scenarioDetails = dataPluginImporter.GetScenarioDetails(dikeRingId, HemPolderLocationId2, scenarioId);
+ scenarioId = dataPluginImporter.GetScenarioList(HemPolderLocationId2).FirstOrDefault();
+ scenarioDetails = dataPluginImporter.GetScenarioDetails(HemPolderLocationId2, scenarioId);
nameValueParameters = scenarioDetails as NameValueParameter[] ?? scenarioDetails.ToArray();
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL3")).ParameterValue, Is.EqualTo("1.25"));
Assert.That(nameValueParameters.FirstOrDefault(x => x.ParameterName.Equals("HeadPL4")).ParameterValue, Is.EqualTo("3.25"));
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/IO/CombineImportedData.cs
===================================================================
diff -u -r6776 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/IO/CombineImportedData.cs (.../CombineImportedData.cs) (revision 6776)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/IO/CombineImportedData.cs (.../CombineImportedData.cs) (revision 6823)
@@ -121,28 +121,22 @@
AddDikesFromLocationsToWaterBoard(WaterBoard);
- foreach (Dike dike in WaterBoard.Dikes)
- {
- TransferLocationsData(dike);
- TransferSoilProfilesData(dike);
- TransferAquifersData(dike);
- TransferSegmentData(dike);
- TransferSigmaTauCurveData(dike); // Should be done before TransferSoilData(), because the SigmaTauCurveData is used there
- TransferSuTableData(dike); // Should be done before TransferSoilData(), because the SuTableCurveData is used there
- TransferSoilData(dike);
- // Use InvokeWithoutPublishingEvents for performance reasons after introducing SurfaceLine2
- DataEventPublisher.InvokeWithoutPublishingEvents(() => { TransferSurfaceLines(dike); });
- }
+ TransferLocationsData(WaterBoard.Dike);
+ TransferSoilProfilesData(WaterBoard.Dike);
+ TransferAquifersData(WaterBoard.Dike);
+ TransferSegmentData(WaterBoard.Dike);
+ TransferSigmaTauCurveData(WaterBoard.Dike); // Should be done before TransferSoilData(), because the SigmaTauCurveData is used there
+ TransferSuTableData(WaterBoard.Dike); // Should be done before TransferSoilData(), because the SuTableCurveData is used there
+ TransferSoilData(WaterBoard.Dike);
+ // Use InvokeWithoutPublishingEvents for performance reasons after introducing SurfaceLine2
+ DataEventPublisher.InvokeWithoutPublishingEvents(() => { TransferSurfaceLines(WaterBoard.Dike); });
}
public void AddScenarioDataToDikes()
{
- foreach (Dike dike in WaterBoard.Dikes)
+ if (ScenarioRecords != null)
{
- if (ScenarioRecords != null)
- {
- TransferScenarios(dike);
- }
+ TransferScenarios(WaterBoard.Dike);
}
}
@@ -239,9 +233,9 @@
if ((dikeRingIdList.Count <= 0) && LocationRecords.Any())
{
var defaultDikeRingId = "Dike from CSV";
- if (targetWaterBoard.Dikes.Count > 0)
+ if (targetWaterBoard.Dike != null)
{
- defaultDikeRingId = targetWaterBoard.Dikes[0].Name;
+ defaultDikeRingId = targetWaterBoard.Dike.Name;
}
foreach (CsvImporterLocations.LocationRecord locationRecord in LocationRecords)
@@ -253,16 +247,13 @@
}
// Add dikeringids if not yet in waterboard
- foreach (string dikeRingId in dikeRingIdList)
+ Dike dike = targetWaterBoard.Dike;
+ if (dike == null)
{
- Dike dike = targetWaterBoard.Dikes.FirstOrDefault(d => d.Name.Equals(dikeRingId));
- if (dike == null)
+ targetWaterBoard.Dike = new Dike
{
- targetWaterBoard.Dikes.Add(new Dike
- {
- Name = dikeRingId
- });
- }
+ Name = dikeRingIdList[0]
+ };
}
}
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoardImporter.cs
===================================================================
diff -u -r6776 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoardImporter.cs (.../WaterBoardImporter.cs) (revision 6776)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoardImporter.cs (.../WaterBoardImporter.cs) (revision 6823)
@@ -75,12 +75,12 @@
/// Type of the dam project.
/// The import log messages.
///
- public static IEnumerable ImportDikeRingIds(
+ public static string ImportDikeRingIds(
string dataFolder, DataSourceContainer dataSourceContainer, DamProjectType damProjectType, out List importLogMessages)
{
var importer = new WaterBoardImporter(dataFolder, dataSourceContainer, damProjectType);
- IEnumerable allDikeRingIds = importer.AllDikeRingIDs;
+ string allDikeRingIds = importer.AllDikeRingIDs;
importLogMessages = new List(importer.ImportCsvLogMessages);
return allDikeRingIds;
@@ -98,7 +98,7 @@
/// The log messages.
///
public static WaterBoard ImportDataForDikeRings(string damProjectFolder, string dataFolder,
- DataSourceContainer dataSourceContainer, IEnumerable dikeRingIds,
+ DataSourceContainer dataSourceContainer, string dikeRingIds,
DamProjectType damProjectType, ProgressDelegate progress, out List logMessages)
{
var importer = new WaterBoardImporter(dataFolder, dataSourceContainer, damProjectType);
@@ -108,12 +108,10 @@
try
{
waterBoard = importer.ImportDataForDikeRings(damProjectFolder, dikeRingIds, progress);
- foreach (Dike dike in waterBoard.Dikes)
+
+ if (string.IsNullOrEmpty(waterBoard.Dike.MapForSoilGeometries2D) && !string.IsNullOrEmpty(dataSourceContainer.MapSoilProfile2D))
{
- if (string.IsNullOrEmpty(dike.MapForSoilGeometries2D) && !string.IsNullOrEmpty(dataSourceContainer.MapSoilProfile2D))
- {
- dike.MapForSoilGeometries2D = dataSourceContainer.MapSoilProfile2D;
- }
+ waterBoard.Dike.MapForSoilGeometries2D = dataSourceContainer.MapSoilProfile2D;
}
}
catch (Exception e)
@@ -148,12 +146,12 @@
///
/// All dike ring i ds.
///
- private IEnumerable AllDikeRingIDs
+ private string AllDikeRingIDs
{
get
{
ImportCsvLogMessages.Clear();
- List dikeRingIdList = importer.GetDikeRingIdList().ToList();
+ string dikeRingIdList = importer.GetDikeRingIdList();
ImportCsvLogMessages.AddRange(importer.ImportLogMessages);
return dikeRingIdList;
}
@@ -181,9 +179,9 @@
/// The dike ring ids.
/// The progress.
///
- private WaterBoard ImportDataForDikeRings(string damProjectFolder, IEnumerable dikeRingIds, ProgressDelegate progress)
+ private WaterBoard ImportDataForDikeRings(string damProjectFolder, string dikeRingIds, ProgressDelegate progress)
{
- List dikeRingList = ValidateDikeRingIDs(dikeRingIds);
+ string dikeRingId = ValidateDikeRingIDs(dikeRingIds);
importer.DamProjectFolder = damProjectFolder;
@@ -195,15 +193,11 @@
return waterBoard;
}
- // import data for dike rings
- foreach (string dikeRingId in dikeRingList)
- {
- // Add dikes to waterboard
- List importedCsvSoils = importer.WaterBoard.Dikes.First(d => d.Name == dikeRingId).ImportedCsvSoils;
- IEnumerable importedCsvAquifers = importer.WaterBoard.Dikes.First(d => d.Name == dikeRingId).Aquifers;
- Dike dike = ImportDataForDikeRing(importedCsvSoils, importedCsvAquifers, dikeRingId);
- waterBoard.Dikes.Add(dike);
- }
+ // Add dikes to waterboard
+ List importedCsvSoils = importer.WaterBoard.Dike.ImportedCsvSoils;
+ IEnumerable importedCsvAquifers = importer.WaterBoard.Dike.Aquifers;
+ Dike dike = ImportDataForDikeRing(importedCsvSoils, importedCsvAquifers, dikeRingId);
+ waterBoard.Dike = dike;
ImportBackground();
return waterBoard;
@@ -214,22 +208,19 @@
///
/// The dike ring ids.
///
- private List ValidateDikeRingIDs(IEnumerable dikeRingIds)
+ private string ValidateDikeRingIDs(string dikeRingIds)
{
// if no dike ring IDs specified, take all
- return dikeRingIds == null
- ? importer.GetDikeRingIdList().ToList()
- : (dikeRingIds as List ?? dikeRingIds.ToList());
+ return dikeRingIds == null ? importer.GetDikeRingIdList() : dikeRingIds;
}
///
/// Imports the soils.
///
- /// The dike ring identifier.
/// The dike.
- private void ImportSoils(string dikeRingID, Dike dike)
+ private void ImportSoils(Dike dike)
{
- List soils = GetSoils(dikeRingID);
+ List soils = GetSoils();
foreach (DamSoil soil in soils)
{
dike.AddDamSoil(soil);
@@ -239,29 +230,27 @@
///
/// Gets the soils.
///
- /// The dike ring identifier.
///
- private List GetSoils(string dikeRingID)
+ private List GetSoils()
{
- IEnumerable soilIdList = importer.GetSoilIdList(dikeRingID);
- List soils = soilIdList.Select(soilId => ImportSoil(dikeRingID, soilId)).ToList();
+ IEnumerable soilIdList = importer.GetSoilIdList();
+ List soils = soilIdList.Select(soilId => ImportSoil(soilId)).ToList();
return soils;
}
///
/// Imports a soil.
///
- /// The dike ring identifier.
/// The soil identifier.
///
- private DamSoil ImportSoil(string dikeRingID, string soilID)
+ private DamSoil ImportSoil(string soilID)
{
var soil = new DamSoil
{
Name = soilID
};
- IEnumerable soilDetails = importer.GetSoilDetails(dikeRingID, soilID);
+ IEnumerable soilDetails = importer.GetSoilDetails(soilID);
foreach (NameValueParameter soilDetail in soilDetails)
{
@@ -285,21 +274,21 @@
{
Name = dikeRingId
};
- ImportSoils(dikeRingId, dike);
-
- ImportSoilProfiles1D(dikeRingId, dike);
+ ImportSoils(dike);
+ ImportSoilProfiles1D(dike);
+
ImportAquifers(importedCsvAquifers, dike);
- ImportSegments(dikeRingId, dike);
+ ImportSegments(dike);
- ImportSurfaceLines(dikeRingId, dike);
+ ImportSurfaceLines(dike);
- ImportModelParameters(dikeRingId, dike);
+ ImportModelParameters(dike);
- ImportLocations(dikeRingId, dike);
+ ImportLocations(dike);
- ImportScenarios(dikeRingId, dike);
+ ImportScenarios(dike);
// Use InvokeWithoutPublishingEvents for performance reasons after introducing SurfaceLine2
DataEventPublisher.InvokeWithoutPublishingEvents(() =>
@@ -313,14 +302,14 @@
ImportCsvLogMessages.AddRange(dike.MakeDataConsistent(importedCsvSoils));
- DisposeImportedItem(dikeRingId);
+ DisposeImportedItem();
return dike;
}
- private void DisposeImportedItem(string dikeRingId)
+ private void DisposeImportedItem()
{
- importer.DisposeImportedItem(dikeRingId);
+ importer.DisposeImportedItem();
}
///
@@ -360,27 +349,25 @@
///
/// Imports the scenarios.
///
- /// The dike ring identifier.
/// The dike.
- private void ImportScenarios(string dikeRingId, Dike dike)
+ private void ImportScenarios(Dike dike)
{
- AddScenariosToLocations(dike, dikeRingId);
+ AddScenariosToLocations(dike);
}
///
/// Adds the scenarios to locations.
///
/// The dike.
- /// The dike ring identifier.
- private void AddScenariosToLocations(Dike dike, string dikeRingId)
+ private void AddScenariosToLocations(Dike dike)
{
foreach (Location location in dike.Locations)
{
- IEnumerable scenarioList = importer.GetScenarioList(dikeRingId, location.Name);
+ IEnumerable scenarioList = importer.GetScenarioList(location.Name);
foreach (string scenarioId in scenarioList)
{
IEnumerable nameValues =
- importer.GetScenarioDetails(dikeRingId, location.Name, scenarioId);
+ importer.GetScenarioDetails(location.Name, scenarioId);
var scenario = new Scenario
{
LocationScenarioID = scenarioId
@@ -401,11 +388,10 @@
///
/// Imports the locations.
///
- /// The dike ring identifier.
/// The dike.
- private void ImportLocations(string dikeRingId, Dike dike)
+ private void ImportLocations(Dike dike)
{
- IEnumerable locationIdList = importer.GetLocationIdList(dikeRingId);
+ IEnumerable locationIdList = importer.GetLocationIdList();
foreach (string locationId in locationIdList)
{
@@ -414,15 +400,15 @@
Name = locationId
};
- Info locationInfo = importer.GetLocationInfo(dikeRingId, locationId);
+ Info locationInfo = importer.GetLocationInfo(locationId);
location.Name = locationInfo.Name;
DataSourceManager.SetSource(location, "Name", locationInfo.Source);
location.Description = locationInfo.Description;
DataSourceManager.SetSource(location, "Description", locationInfo.Source);
- IEnumerable locationDetails = importer.GetLocationDetails(dikeRingId, locationId);
+ IEnumerable locationDetails = importer.GetLocationDetails(locationId);
foreach (NameValueParameter locationDetail in locationDetails)
{
location.SetParameterFromNameValuePair(locationDetail.ParameterName, locationDetail.ParameterValue);
@@ -459,11 +445,10 @@
///
/// Imports the model parameters.
///
- /// The dike ring identifier.
/// The dike.
- private void ImportModelParameters(string dikeRingId, Dike dike)
+ private void ImportModelParameters(Dike dike)
{
- IEnumerable modelParameters = importer.GetDikeParameters(dikeRingId);
+ IEnumerable modelParameters = importer.GetDikeParameters();
foreach (NameValueParameter modelParameter in modelParameters)
{
dike.SetParameterFromNameValuePair(modelParameter.ParameterName, modelParameter.ParameterValue);
@@ -474,14 +459,13 @@
///
/// Imports the surface lines.
///
- /// The dike ring identifier.
/// The dike.
- private void ImportSurfaceLines(string dikeRingId, Dike dike)
+ private void ImportSurfaceLines(Dike dike)
{
// Use InvokeWithoutPublishingEvents for performance reasons after introducing SurfaceLine2
DataEventPublisher.InvokeWithoutPublishingEvents(() =>
{
- IEnumerable surfaceLineIdList = importer.GetSurfaceLineIdList(dikeRingId);
+ IEnumerable surfaceLineIdList = importer.GetSurfaceLineIdList();
foreach (string surfaceLineId in surfaceLineIdList)
{
var surfaceLine = new SurfaceLine2
@@ -495,14 +479,14 @@
};
// load the surface line points
- IList surfaceLinePoints = importer.GetSurfaceLinePoints(dikeRingId, surfaceLineId);
+ IList surfaceLinePoints = importer.GetSurfaceLinePoints(surfaceLineId);
foreach (GeometryPoint surfaceLinePoint in surfaceLinePoints)
{
surfaceLine.AddCharacteristicPoint(surfaceLinePoint);
}
// load the characteristic points
- IEnumerable characteristicPoints = importer.GetSurfaceLineCharacteristicPoints(dikeRingId, surfaceLineId);
+ IEnumerable characteristicPoints = importer.GetSurfaceLineCharacteristicPoints(surfaceLineId);
foreach (DpCharacteristicPoint cp in characteristicPoints)
{
var cpType = (CharacteristicPointType) Enum.Parse(
@@ -519,11 +503,10 @@
///
/// Imports the segments.
///
- /// The dike ring identifier.
/// The dike.
- private void ImportSegments(string dikeRingID, Dike dike)
+ private void ImportSegments(Dike dike)
{
- IEnumerable segmentIdList = importer.GetSegmentIdList(dikeRingID);
+ IEnumerable segmentIdList = importer.GetSegmentIdList();
foreach (string segmentID in segmentIdList)
{
var segment = new Segment
@@ -533,8 +516,8 @@
foreach (FailureMechanismSystemType failureMechanismSystemType in Enum.GetValues(typeof(FailureMechanismSystemType)))
{
- AddSoilProfiles(segment, dikeRingID, segmentID, failureMechanismSystemType, dike);
- AddSoilGeometry(segment, dikeRingID, segmentID, failureMechanismSystemType);
+ AddSoilProfiles(segment, segmentID, failureMechanismSystemType, dike);
+ AddSoilGeometry(segment, segmentID, failureMechanismSystemType);
}
waterBoard.Segments.Add(segment);
@@ -545,13 +528,12 @@
/// Adds the soil profiles.
///
/// The segment.
- /// The dike ring identifier.
/// The segment identifier.
/// Type of the failure mechanism system.
/// The dike.
- private void AddSoilProfiles(Segment segment, string dikeRingID, string segmentID, FailureMechanismSystemType failureMechanismSystemType, Dike dike)
+ private void AddSoilProfiles(Segment segment, string segmentID, FailureMechanismSystemType failureMechanismSystemType, Dike dike)
{
- IEnumerable profile1DIdListForSegment = importer.GetProfile1DIdListForSegment(dikeRingID, segmentID, failureMechanismSystemType);
+ IEnumerable profile1DIdListForSegment = importer.GetProfile1DIdListForSegment(segmentID, failureMechanismSystemType);
foreach (string soilProfile1DId in profile1DIdListForSegment)
{
@@ -561,7 +543,7 @@
};
// get soil profile
- IEnumerable soilProfile1DDetails = importer.GetSegmentProfile1DDetails(dikeRingID, segmentID, soilProfile1DId, failureMechanismSystemType);
+ IEnumerable soilProfile1DDetails = importer.GetSegmentProfile1DDetails(segmentID, soilProfile1DId, failureMechanismSystemType);
SoilProfile1D soilProfile1D = dike.SoilProfiles.FirstOrDefault(x => x.Name.Equals(soilProfile1DId));
double probability = 0;
@@ -581,19 +563,18 @@
/// Adds the soil geometry.
///
/// The segment.
- /// The dike ring identifier.
/// The segment identifier.
/// Type of the failure mechanism system.
- private void AddSoilGeometry(Segment segment, string dikeRingID, string segmentID, FailureMechanismSystemType failureMechanismSystemType)
+ private void AddSoilGeometry(Segment segment, string segmentID, FailureMechanismSystemType failureMechanismSystemType)
{
- IEnumerable profile2DIdListForSegment = importer.GetProfile2DIdListForSegment(dikeRingID, segmentID, failureMechanismSystemType);
+ IEnumerable profile2DIdListForSegment = importer.GetProfile2DIdListForSegment(segmentID, failureMechanismSystemType);
foreach (string soilGeometry2DName in profile2DIdListForSegment)
{
var numberFormatInfo = new NumberFormatInfo
{
NumberDecimalSeparator = "."
};
- IEnumerable soilProfile2DDetails = importer.GetSegmentProfile2DDetails(dikeRingID, segmentID, soilGeometry2DName, failureMechanismSystemType);
+ IEnumerable soilProfile2DDetails = importer.GetSegmentProfile2DDetails(segmentID, soilGeometry2DName, failureMechanismSystemType);
var probability = 0.0;
foreach (NameValueParameter nameValueparameter in soilProfile2DDetails)
{
@@ -610,14 +591,13 @@
///
/// Imports the soil profiles1 d.
///
- /// The dike ring identifier.
/// The dike.
- private void ImportSoilProfiles1D(string dikeRingId, Dike dike)
+ private void ImportSoilProfiles1D(Dike dike)
{
- IEnumerable soilProfile1DIdList = importer.GetSoilProfile1DIdList(dikeRingId);
+ IEnumerable soilProfile1DIdList = importer.GetSoilProfile1DIdList();
foreach (string soilProfile1DId in soilProfile1DIdList)
{
- dike.SoilProfiles.Add(ImportProfile(soilProfile1DId, dikeRingId, dike));
+ dike.SoilProfiles.Add(ImportProfile(soilProfile1DId, dike));
}
}
@@ -633,26 +613,25 @@
/// Imports a profile.
///
/// The soil profile1 d identifier.
- /// The dike ring identifier.
/// The dike.
///
///
///
- private SoilProfile1D ImportProfile(string soilProfile1DId, string dikeRingId, Dike dike)
+ private SoilProfile1D ImportProfile(string soilProfile1DId, Dike dike)
{
var soilProfile = new SoilProfile1D
{
Name = soilProfile1DId
};
var bottomLevel = 0.0;
- DpSoilProfile dpSoilProfile = importer.GetSoilProfile1DDetails(dikeRingId, soilProfile1DId);
+ DpSoilProfile dpSoilProfile = importer.GetSoilProfile1DDetails(soilProfile1DId);
for (var layerIndex = 0; layerIndex < dpSoilProfile.Layers.Count; layerIndex++)
{
DpLayer layer = dpSoilProfile.Layers[layerIndex];
if (layer.SoilName == SoilProfile1D.SoilProfileBottomLevelId)
{
- // This is a hack to communicate the bottomlevel via a layer
+ // This is a hack to communicate the bottom level via a layer
bottomLevel = layer.TopLevel;
}
else
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardImporterTests.cs
===================================================================
diff -u -r6750 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardImporterTests.cs (.../WaterBoardImporterTests.cs) (revision 6750)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardImporterTests.cs (.../WaterBoardImporterTests.cs) (revision 6823)
@@ -47,16 +47,16 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
- DamProjectType.DamLiveConfiguration, out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
+ DamProjectType.DamLiveConfiguration, out _);
using WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
- dataSourceContainer, dikeList,
+ dataSourceContainer, dikeId,
DamProjectType.DamLiveConfiguration, null,
out List _);
// Check Dike
- Assert.That(waterBoard.Dikes, Has.Count.EqualTo(1));
- Dike dike = waterBoard.Dikes[0];
+ Assert.That(waterBoard.Dike, Is.Not.Null);
+ Dike dike = waterBoard.Dike;
//Check locations
Assert.That(dike.Locations, Has.Count.EqualTo(2));
@@ -153,10 +153,10 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
List logMessages;
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
- DamProjectType.DamLiveConfiguration, out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
+ DamProjectType.DamLiveConfiguration, out _);
using WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
- dataSourceContainer, dikeList,
+ dataSourceContainer, dikeId,
DamProjectType.DamLiveConfiguration, null,
out logMessages);
@@ -167,9 +167,9 @@
Assert.That(logMessages[1].Message, Contains.Substring("Sigma-Tau curve table MissingNotUsed not found in CSV file for soil ETL (or sigmataucurves.csv missing)."));
});
// Check Dike
- Assert.That(waterBoard.Dikes, Has.Count.EqualTo(1));
+ Assert.That(waterBoard.Dike, Is.Not.Null);
//Check locations
- Assert.That(waterBoard.Dikes[0].Locations, Has.Count.EqualTo(0));
+ Assert.That(waterBoard.Dike.Locations, Has.Count.EqualTo(0));
}
[Test]
@@ -180,10 +180,10 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
List logMessages;
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
- DamProjectType.DamLiveConfiguration, out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
+ DamProjectType.DamLiveConfiguration, out _);
using WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
- dataSourceContainer, dikeList,
+ dataSourceContainer, dikeId,
DamProjectType.DamLiveConfiguration, null,
out logMessages);
@@ -193,10 +193,10 @@
Assert.That(logMessages[0].Message, Contains.Substring("Sigma-Tau curve table Missing not found in CSV file for soil CCC (or sigmataucurves.csv missing)."));
// Check Dike
- Assert.That(waterBoard.Dikes, Has.Count.EqualTo(1));
+ Assert.That(waterBoard.Dike, Is.Not.Null);
//Check locations
- Assert.That(waterBoard.Dikes[0].Locations, Has.Count.EqualTo(0));
+ Assert.That(waterBoard.Dike.Locations, Has.Count.EqualTo(0));
});
}
@@ -208,10 +208,10 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
List logMessages;
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
- DamProjectType.DamLiveConfiguration, out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
+ DamProjectType.DamLiveConfiguration, out _);
using WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
- dataSourceContainer, dikeList,
+ dataSourceContainer, dikeId,
DamProjectType.DamLiveConfiguration, null,
out logMessages);
@@ -222,9 +222,9 @@
Assert.That(logMessages[1].Message, Contains.Substring("Su table MissingNotUsed not found in CSV file for soil ETL (or sutables.csv missing)."));
});
// Check Dike
- Assert.That(waterBoard.Dikes, Has.Count.EqualTo(1));
+ Assert.That(waterBoard.Dike, Is.Not.Null);
//Check locations
- Assert.That(waterBoard.Dikes[0].Locations, Has.Count.EqualTo(0));
+ Assert.That(waterBoard.Dike.Locations, Has.Count.EqualTo(0));
}
[Test]
@@ -235,10 +235,10 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
List logMessages;
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
- DamProjectType.DamLiveConfiguration, out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
+ DamProjectType.DamLiveConfiguration, out _);
using WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
- dataSourceContainer, dikeList,
+ dataSourceContainer, dikeId,
DamProjectType.DamLiveConfiguration, null,
out logMessages);
@@ -248,10 +248,10 @@
Assert.That(logMessages[0].Message, Contains.Substring("Su table Missing not found in CSV file for soil CCC (or sutables.csv missing)."));
// Check Dike
- Assert.That(waterBoard.Dikes, Has.Count.EqualTo(1));
+ Assert.That(waterBoard.Dike, Is.Not.Null);
//Check locations
- Assert.That(waterBoard.Dikes[0].Locations, Has.Count.EqualTo(0));
+ Assert.That(waterBoard.Dike.Locations, Has.Count.EqualTo(0));
});
}
@@ -264,19 +264,19 @@
{
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
- DamProjectType.DamLiveConfiguration, out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
+ DamProjectType.DamLiveConfiguration, out _);
damProject.DamProjectData.WaterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
dataSourceContainer,
- dikeList, DamProjectType.DamLiveConfiguration, null, out List _);
+ dikeId, DamProjectType.DamLiveConfiguration, null, out List _);
damProject.AssignGeometry2DMapnameIfNotAssigned(Path.Combine(damImportFolder, dataSourceContainer.MapSoilProfile2D));
// Save the data
damProject.SaveXMLProject(projectFilename, damProject);
// Check Dike
- Assert.That(damProject.DamProjectData.WaterBoard.Dikes, Has.Count.EqualTo(1));
- Dike dike = damProject.DamProjectData.WaterBoard.Dikes[0];
+ Assert.That(damProject.DamProjectData.WaterBoard.Dike, Is.Not.Null);
+ Dike dike = damProject.DamProjectData.WaterBoard.Dike;
Assert.Multiple(() =>
{
@@ -296,15 +296,15 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
- DamProjectType.DamLiveConfiguration, out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer,
+ DamProjectType.DamLiveConfiguration, out _);
using WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
- dataSourceContainer, dikeList,
+ dataSourceContainer, dikeId,
DamProjectType.DamLiveConfiguration, null, out List _);
// Check Dike
- Assert.That(waterBoard.Dikes.Count, Is.EqualTo(1));
- Dike dike = waterBoard.Dikes[0];
+ Assert.That(waterBoard.Dike, Is.Not.Null);
+ Dike dike = waterBoard.Dike;
//Check locations
Assert.That(dike.Locations.Count, Is.EqualTo(2));
@@ -318,13 +318,12 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer, DamProjectType.DamLiveConfiguration,
- out _).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer, DamProjectType.DamLiveConfiguration, out _);
using (WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder, dataSourceContainer,
- dikeList, DamProjectType.DamLiveConfiguration, null, out List _))
+ dikeId, DamProjectType.DamLiveConfiguration, null, out List _))
using (WaterBoard referenceWaterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder,
dataSourceContainer,
- dikeList, DamProjectType.DamLiveConfiguration, null, out List _))
+ dikeId, DamProjectType.DamLiveConfiguration, null, out List _))
{
// If profiles are defined as relative profiles, new absolute profiles will be generated for each location
if (dataSourceContainer.IsImportAsRelativeProfiles)
@@ -334,8 +333,8 @@
}
// Check Dike
- Assert.That(waterBoard.Dikes.Count, Is.EqualTo(1));
- Dike dike = waterBoard.Dikes[0];
+ Assert.That(waterBoard.Dike, Is.Not.Null);
+ Dike dike = waterBoard.Dike;
//Check locations
Assert.That(dike.Locations.Count, Is.EqualTo(2));
@@ -421,15 +420,15 @@
dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
- IList dikeList =
+ string dikeList =
WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer, DamProjectType.DamLiveConfiguration,
- out _).ToList();
+ out _);
using (WaterBoard waterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder, dataSourceContainer,
dikeList, DamProjectType.DamLiveConfiguration, null, out List _))
{
// Check Dike
- Assert.That(waterBoard.Dikes.Count, Is.EqualTo(1));
- Dike dike = waterBoard.Dikes[0];
+ Assert.That(waterBoard.Dike, Is.Not.Null);
+ Dike dike = waterBoard.Dike;
//Check locations
Assert.That(dike.Locations.Count, Is.EqualTo(2));
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.IntegrationTests/ImportTests.cs
===================================================================
diff -u -r6787 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.IntegrationTests/ImportTests.cs (.../ImportTests.cs) (revision 6787)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.IntegrationTests/ImportTests.cs (.../ImportTests.cs) (revision 6823)
@@ -24,10 +24,8 @@
using Deltares.Dam.Data;
using Deltares.Dam.Data.DataPlugins.Configuration;
using Deltares.Dam.Data.UISupport;
-using Deltares.Dam.Forms;
using Deltares.Standard;
using Deltares.Standard.EventPublisher;
-using Deltares.Standard.Language;
using Deltares.Standard.Logging;
using NUnit.Framework;
@@ -53,7 +51,7 @@
};
damProject.ProjectFileName = damNewProjectData.DamProjectFileName;
damProject.DamProjectData.DataSourceEsriProjection = damNewProjectData.DataSourceEsriProjection;
-
+
ImportDamProjectData(damNewProjectData, damProject);
// Write all log messages to a file
File.WriteAllLines(Path.ChangeExtension(damDataSourceFileName, ".log"),
@@ -82,7 +80,7 @@
// ATTENTION: Do not stop DataEventPublisher because it is used to determine the source of the data with DataSourceManager
DataSourceManager.StartListening();
- damProject.Import(damProjectFolder, dataSourceContainer, damNewProjectData.SelectedDikeRingIds,
+ damProject.Import(damProjectFolder, dataSourceContainer, damNewProjectData.SelectedDikeRingIds[0],
damNewProjectData.DamProjectType, null);
// Importing data creates a new DamProjectData object so the values set in the dialog have to be reset.
damProject.DamProjectData.DamProjectType = projectType;
Index: DamClients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs
===================================================================
diff -u -r6822 -r6823
--- DamClients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs (.../DamPlugin.cs) (revision 6822)
+++ DamClients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs (.../DamPlugin.cs) (revision 6823)
@@ -30,7 +30,6 @@
using System.Windows.Forms;
using Deltares.Dam.Data;
using Deltares.Dam.Data.DamEngineIo;
-using Deltares.Dam.Data.DataPlugins;
using Deltares.Dam.Data.DataPlugins.Configuration;
using Deltares.Dam.Data.IO;
using Deltares.Dam.Data.License;
@@ -1067,7 +1066,7 @@
// ATTENTION: Do not stop DataEventPublisher because it is needed to determine the source of the data with DataSourceManager
DataSourceManager.StartListening();
- damProject.Import(damProjectFolder, dataSourceContainer, damNewProjectData.SelectedDikeRingIds,
+ damProject.Import(damProjectFolder, dataSourceContainer, damNewProjectData.SelectedDikeRingIds[0],
damNewProjectData.DamProjectType, progressDelegate);
// Importing data creates a new DamProjectData object so the values set in the dialog have to be reset.
@@ -1091,13 +1090,8 @@
// Read sensor data if DamLive Configuration project
if (damNewProjectData.DamProjectType == DamProjectType.DamLiveConfiguration)
{
- if (damProject.DamProjectData.WaterBoard.Dikes.Count != 1)
- {
- throw new DataPluginImporterException(String.Format("DamLive Configuration must have exactly 1 dike; this project has {0} dikes", damProject.DamProjectData.WaterBoard.Dikes.Count));
- }
+ Dike dike = damProject.DamProjectData.WaterBoard.Dike;
- Dike dike = damProject.DamProjectData.WaterBoard.Dikes.First();
-
string sensorConfigurationFilename = Path.GetFullPath(damNewProjectData.SensorConfigurationFileName);
if (File.Exists(sensorConfigurationFilename))
{
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data.Tests/LocationTests.cs
===================================================================
diff -u -r6669 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data.Tests/LocationTests.cs (.../LocationTests.cs) (revision 6669)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data.Tests/LocationTests.cs (.../LocationTests.cs) (revision 6823)
@@ -62,7 +62,7 @@
});
}
}
-
+
[Test]
public void CheckNameValuePairGetSet()
{
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.TestHelper/ProjectLoader.cs
===================================================================
diff -u -r6817 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.TestHelper/ProjectLoader.cs (.../ProjectLoader.cs) (revision 6817)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.TestHelper/ProjectLoader.cs (.../ProjectLoader.cs) (revision 6823)
@@ -79,10 +79,7 @@
}
};
- damProject.Import(projectDataFolder, container, new[]
- {
- "Dike from CSV"
- }, DamProjectType.Design, null);
+ damProject.Import(projectDataFolder, container, "Dike from CSV", DamProjectType.Design, null);
return damProject.DamProjectData;
}
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Sensors/SensorImportFromExcelSheetTest.cs
===================================================================
diff -u -r6750 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Sensors/SensorImportFromExcelSheetTest.cs (.../SensorImportFromExcelSheetTest.cs) (revision 6750)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Sensors/SensorImportFromExcelSheetTest.cs (.../SensorImportFromExcelSheetTest.cs) (revision 6823)
@@ -68,13 +68,12 @@
{
DataSourceContainer dataSourceContainer = DataSourceContainer.Deserialize(definitionFilename);
string damImportFolder = Path.GetDirectoryName(definitionFilename);
- List importLogMessages;
- IList dikeList = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer, DamProjectType.DamLiveConfiguration, out importLogMessages).ToList();
+ string dikeId = WaterBoardImporter.ImportDikeRingIds(damImportFolder, dataSourceContainer, DamProjectType.DamLiveConfiguration, out _);
damProject.DamProjectData.WaterBoard = WaterBoardImporter.ImportDataForDikeRings("", damImportFolder, dataSourceContainer,
- dikeList, DamProjectType.DamLiveConfiguration, null, out List _);
+ dikeId, DamProjectType.DamLiveConfiguration, null, out List _);
damProject.AssignGeometry2DMapnameIfNotAssigned(Path.Combine(damImportFolder, dataSourceContainer.MapSoilProfile2D));
- Dike dike = damProject.DamProjectData.WaterBoard.Dikes.First();
+ Dike dike = damProject.DamProjectData.WaterBoard.Dike;
Assert.That(dike.Locations.Count, Is.EqualTo(6));
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamProjectTest.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamProjectTest.cs (.../DamProjectTest.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/DamProjectTest.cs (.../DamProjectTest.cs) (revision 6823)
@@ -62,35 +62,19 @@
public void NewGeometry2DMapnameCorrectIfNewLocation()
{
var projectFilename = "Delfland.damx";
- var mapName = @"..\..\geometries\";
- string newMapname = DamProject.CreateNewGeometry2DMapname(projectFilename, mapName, 2);
- Assert.That(newMapname, Is.EqualTo(@"Delfland.geometries2D.2\"));
+ string newMapname = DamProject.CreateNewGeometry2DMapname(projectFilename);
+ Assert.That(newMapname, Is.EqualTo(@"Delfland.geometries2D\"));
}
[Test]
- public void NewGeometry2DMapnameCorrectIfSourceIsTarget()
- {
- var projectFilename = "Delfland.damx";
- var mapName = @"Delfland.geometries2D.10\";
- string newMapname = DamProject.CreateNewGeometry2DMapname(projectFilename, mapName, 10);
- Assert.That(newMapname, Is.EqualTo(@"Delfland.geometries2D.10\"));
- }
-
- [Test]
public void CanAssignGeometry2DMapnameIfNotAssigned()
{
const string mapName1 = @"Test1\";
- const string mapName2 = @"Test2\";
using var damProject = new DamProject();
- damProject.DamProjectData.WaterBoard.Dikes.Add(new Dike());
- damProject.DamProjectData.WaterBoard.Dikes.Add(new Dike
- {
- MapForSoilGeometries2D = mapName1
- });
- damProject.DamProjectData.WaterBoard.Dikes.Add(new Dike());
- damProject.AssignGeometry2DMapnameIfNotAssigned(mapName2);
- Assert.That(damProject.DamProjectData.WaterBoard.Dikes[0].MapForSoilGeometries2D, Is.EqualTo(mapName2));
- Assert.That(damProject.DamProjectData.WaterBoard.Dikes[1].MapForSoilGeometries2D, Is.EqualTo(mapName1));
- Assert.That(damProject.DamProjectData.WaterBoard.Dikes[2].MapForSoilGeometries2D, Is.EqualTo(mapName2));
+ damProject.DamProjectData.WaterBoard.Dike = new Dike();
+ Assert.That(damProject.DamProjectData.WaterBoard.Dike.MapForSoilGeometries2D, Is.Null);
+
+ damProject.AssignGeometry2DMapnameIfNotAssigned(mapName1);
+ Assert.That(damProject.DamProjectData.WaterBoard.Dike.MapForSoilGeometries2D, Is.EqualTo(mapName1));
}
}
\ No newline at end of file
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoardPostProcessRelativeProfiles.cs
===================================================================
diff -u -r6436 -r6823
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoardPostProcessRelativeProfiles.cs (.../WaterBoardPostProcessRelativeProfiles.cs) (revision 6436)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/WaterBoardPostProcessRelativeProfiles.cs (.../WaterBoardPostProcessRelativeProfiles.cs) (revision 6823)
@@ -48,95 +48,92 @@
public static void CreateAbsoluteProfiles(WaterBoard waterBoard, CharacteristicPointType characteristicPointType)
{
const double moveAccuracy = 1e-6;
- foreach (Dike dike in waterBoard.Dikes)
+ foreach (Location location in waterBoard.Dike.Locations)
{
- foreach (Location location in dike.Locations)
+ Segment orgSegment = location.Segment;
+ if (orgSegment != null)
{
- Segment orgSegment = location.Segment;
- if (orgSegment != null)
+ double topSurfaceline = location.SurfaceLine2.CharacteristicPoints.Geometry.GetMaxZ();
+ GeometryPoint characteristicGeometryPoint = location.SurfaceLine2.CharacteristicPoints.GetGeometryPoint(characteristicPointType);
+ var errorFound = false;
+ var newSegment = new Segment();
+ newSegment.Name = $"Segment {orgSegment.Name}-{location.Name}";
+ var soilProbabilityIndex = 0;
+ foreach (SoilGeometryProbability orgSoilGeometryProbability in orgSegment.SoilProfileProbabilities)
{
- double topSurfaceline = location.SurfaceLine2.CharacteristicPoints.Geometry.GetMaxZ();
- GeometryPoint characteristicGeometryPoint = location.SurfaceLine2.CharacteristicPoints.GetGeometryPoint(characteristicPointType);
- var errorFound = false;
- var newSegment = new Segment();
- newSegment.Name = $"Segment {orgSegment.Name}-{location.Name}";
- var soilProbabilityIndex = 0;
- foreach (SoilGeometryProbability orgSoilGeometryProbability in orgSegment.SoilProfileProbabilities)
+ soilProbabilityIndex++;
+ try
{
- soilProbabilityIndex++;
- try
+ if (characteristicGeometryPoint == null)
{
- if (characteristicGeometryPoint == null)
- {
- throw new WaterBoardPostProcessRelativeProfilesException($"Characteristic point {characteristicPointType} is not defined");
- }
+ throw new WaterBoardPostProcessRelativeProfilesException($"Characteristic point {characteristicPointType} is not defined");
+ }
- if (orgSoilGeometryProbability.SoilProfileType.Equals(SoilProfileType.SoilProfile2D))
- {
- throw new WaterBoardPostProcessRelativeProfilesException("Cannot apply relative profiles for 2d soilprofiles");
- }
+ if (orgSoilGeometryProbability.SoilProfileType.Equals(SoilProfileType.SoilProfile2D))
+ {
+ throw new WaterBoardPostProcessRelativeProfilesException("Cannot apply relative profiles for 2d soilprofiles");
+ }
- // Create a copy of the original SoilGeometryProbability
- var newSoilGeometryProbability = new SoilGeometryProbability();
- newSoilGeometryProbability.Assign(orgSoilGeometryProbability);
+ // Create a copy of the original SoilGeometryProbability
+ var newSoilGeometryProbability = new SoilGeometryProbability();
+ newSoilGeometryProbability.Assign(orgSoilGeometryProbability);
- // Move all layer boundaries so toplevel of the soilprofile1D will be at level of specified characteristic point
- // Dependent if deltaZ is positive or negative, the bottomLevel should be adjusted before or after adjusting the layers
- // This is necessary, because the bottomlevel is adjusted automatically during adjustment of layers
- SoilProfile1D soilProfile1D = newSoilGeometryProbability.SoilProfile;
- soilProfile1D.Name = $"{orgSoilGeometryProbability.SoilProfile.Name}-{location.Name}-{soilProbabilityIndex}";
- double deltaZ = characteristicGeometryPoint.Z - soilProfile1D.TopLevel;
- if (deltaZ < 0)
- {
- soilProfile1D.BottomLevel += deltaZ;
- }
+ // Move all layer boundaries so toplevel of the soilprofile1D will be at level of specified characteristic point
+ // Dependent if deltaZ is positive or negative, the bottomLevel should be adjusted before or after adjusting the layers
+ // This is necessary, because the bottomlevel is adjusted automatically during adjustment of layers
+ SoilProfile1D soilProfile1D = newSoilGeometryProbability.SoilProfile;
+ soilProfile1D.Name = $"{orgSoilGeometryProbability.SoilProfile.Name}-{location.Name}-{soilProbabilityIndex}";
+ double deltaZ = characteristicGeometryPoint.Z - soilProfile1D.TopLevel;
+ if (deltaZ < 0)
+ {
+ soilProfile1D.BottomLevel += deltaZ;
+ }
- foreach (SoilLayer1D soilLayer1D in soilProfile1D.Layers)
- {
- soilLayer1D.TopLevel += deltaZ;
- }
+ foreach (SoilLayer1D soilLayer1D in soilProfile1D.Layers)
+ {
+ soilLayer1D.TopLevel += deltaZ;
+ }
- if (deltaZ > 0)
- {
- soilProfile1D.BottomLevel += deltaZ;
- }
+ if (deltaZ > 0)
+ {
+ soilProfile1D.BottomLevel += deltaZ;
+ }
- double profileTopLevel = soilProfile1D.TopLevel;
- // If the top of the profile is moved below the top of the surface level, a gap appears which will be filled in later in the UI
- // to the combined 2D. However, for Piping calculation the 1D profile itself needs to start at least at the top of the surface line
- // too in order to perform a correct calculation. So extend the 1D profile here too!
- if (Math.Abs(deltaZ) > moveAccuracy && profileTopLevel < topSurfaceline)
+ double profileTopLevel = soilProfile1D.TopLevel;
+ // If the top of the profile is moved below the top of the surface level, a gap appears which will be filled in later in the UI
+ // to the combined 2D. However, for Piping calculation the 1D profile itself needs to start at least at the top of the surface line
+ // too in order to perform a correct calculation. So extend the 1D profile here too!
+ if (Math.Abs(deltaZ) > moveAccuracy && profileTopLevel < topSurfaceline)
+ {
+ var newTopLayer = new SoilLayer1D
{
- var newTopLayer = new SoilLayer1D
- {
- SoilProfile = soilProfile1D,
- MaintainLayerOrder = true,
- TopLevel = topSurfaceline,
- IsAquifer = false,
- Soil = dike.SoilList.GetSoilByName(location.DikeEmbankmentMaterial)
- };
- soilProfile1D.Layers.Insert(0, newTopLayer);
- }
-
- // Add new SoilGeometryProbability to new segment and assign new segment to location
- newSegment.SoilProfileProbabilities.Add(newSoilGeometryProbability);
- // Add new soil profile to existing list.
- dike.SoilProfiles.Add(soilProfile1D);
+ SoilProfile = soilProfile1D,
+ MaintainLayerOrder = true,
+ TopLevel = topSurfaceline,
+ IsAquifer = false,
+ Soil = waterBoard.Dike.SoilList.GetSoilByName(location.DikeEmbankmentMaterial)
+ };
+ soilProfile1D.Layers.Insert(0, newTopLayer);
}
- catch (Exception e)
- {
- errorFound = true;
- LogManager.Messages.Add(new LogMessage(LogMessageType.Error, location,
- $"Error in location '{location.Name}' applying relative height for soilprofile '{orgSoilGeometryProbability.SoilGeometryName}': {e.Message} "));
- }
- }
- if (!errorFound)
+ // Add new SoilGeometryProbability to new segment and assign new segment to location
+ newSegment.SoilProfileProbabilities.Add(newSoilGeometryProbability);
+ // Add new soil profile to existing list.
+ waterBoard.Dike.SoilProfiles.Add(soilProfile1D);
+ }
+ catch (Exception e)
{
- location.Segment = newSegment;
- waterBoard.Segments.Add(newSegment);
+ errorFound = true;
+ LogManager.Messages.Add(new LogMessage(LogMessageType.Error, location,
+ $"Error in location '{location.Name}' applying relative height for soilprofile '{orgSoilGeometryProbability.SoilGeometryName}': {e.Message} "));
}
}
+
+ if (!errorFound)
+ {
+ location.Segment = newSegment;
+ waterBoard.Segments.Add(newSegment);
+ }
}
}
}