Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs
===================================================================
diff -u -rab481580593706295cd3af50672dc394ce5fe3ee -r22cfdf3a1943df34a0e6cfd57c82faedfed781db
--- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision ab481580593706295cd3af50672dc394ce5fe3ee)
+++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 22cfdf3a1943df34a0e6cfd57c82faedfed781db)
@@ -1730,6 +1730,15 @@
}
///
+ /// Looks up a localized string similar to Het lezen van de ondergrondschematisatie '{0}' is mislukt. Geen geldige waarde in kolom '{1}'..
+ ///
+ public static string SoilProfileReader_Profile_Name_0_has_invalid_value_on_Column_1 {
+ get {
+ return ResourceManager.GetString("SoilProfileReader_Profile_Name_0_has_invalid_value_on_Column_1", resourceCulture);
+ }
+ }
+
+ ///
/// Looks up a localized string similar to ondergrondschematisatie '{0}'.
///
public static string SoilProfileReader_SoilProfileName_0_ {
Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx
===================================================================
diff -u -rab481580593706295cd3af50672dc394ce5fe3ee -r22cfdf3a1943df34a0e6cfd57c82faedfed781db
--- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision ab481580593706295cd3af50672dc394ce5fe3ee)
+++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision 22cfdf3a1943df34a0e6cfd57c82faedfed781db)
@@ -877,4 +877,7 @@
Het stochastische ondergrondmodel met '{0}' als faalmechanisme type is niet ondersteund. Alleen stochastische ondergrondmodellen met '{1}' als faalmechanisme type zijn ondersteund.
+
+ Het lezen van de ondergrondschematisatie '{0}' is mislukt. Geen geldige waarde in kolom '{1}'.
+
\ No newline at end of file
Index: Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/SoilProfile1DReader.cs
===================================================================
diff -u -r28064349855037e892288c81383f1413f4e84f4c -r22cfdf3a1943df34a0e6cfd57c82faedfed781db
--- Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/SoilProfile1DReader.cs (.../SoilProfile1DReader.cs) (revision 28064349855037e892288c81383f1413f4e84f4c)
+++ Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/SoilProfile1DReader.cs (.../SoilProfile1DReader.cs) (revision 22cfdf3a1943df34a0e6cfd57c82faedfed781db)
@@ -142,11 +142,14 @@
/// Thrown when reading properties of the profile failed.
private SoilProfile1D TryReadSoilProfile()
{
- var properties = new RequiredProfileProperties(this);
-
+ long profileId = ReadProfileId();
var soilLayers = new List();
+
+ RequiredProfileProperties properties;
try
{
+ properties = new RequiredProfileProperties(this);
+
for (var i = 1; i <= properties.LayerCount; i++)
{
soilLayers.Add(ReadSoilLayerFrom(this, properties.ProfileName));
@@ -155,13 +158,13 @@
}
catch (SoilProfileReadException)
{
- MoveToNextProfile(properties.ProfileId);
+ MoveToNextProfile(profileId);
throw;
}
try
{
- return new SoilProfile1D(properties.ProfileId,
+ return new SoilProfile1D(profileId,
properties.ProfileName,
properties.Bottom,
soilLayers);
@@ -175,6 +178,11 @@
}
}
+ private long ReadProfileId()
+ {
+ return dataReader.Read(SoilProfileTableDefinitions.SoilProfileId);
+ }
+
private void PrepareReader()
{
string soilProfile1DQuery = SoilDatabaseQueryBuilder.GetSoilProfile1DQuery();
@@ -283,9 +291,9 @@
}
catch (InvalidCastException e)
{
- string message = new FileReaderErrorMessageBuilder(reader.Path)
- .WithSubject(string.Format(Resources.SoilProfileReader_SoilProfileName_0_, profileName))
- .Build(string.Format(Resources.SoilProfileReader_Profile_has_invalid_value_on_Column_0_, readColumn));
+ string message = string.Format(Resources.SoilProfileReader_Profile_Name_0_has_invalid_value_on_Column_1,
+ profileName,
+ readColumn);
throw new SoilProfileReadException(message, profileName, e);
}
}
@@ -318,15 +326,12 @@
readColumn = SoilProfileTableDefinitions.LayerCount;
LayerCount = reader.Read(readColumn);
-
- readColumn = SoilProfileTableDefinitions.SoilProfileId;
- ProfileId = reader.Read(readColumn);
}
catch (InvalidCastException e)
{
- string message = new FileReaderErrorMessageBuilder(reader.Path)
- .WithSubject(string.Format(Resources.SoilProfileReader_SoilProfileName_0_, ProfileName))
- .Build(string.Format(Resources.SoilProfileReader_Profile_has_invalid_value_on_Column_0_, readColumn));
+ string message = string.Format(Resources.SoilProfileReader_Profile_Name_0_has_invalid_value_on_Column_1,
+ ProfileName,
+ readColumn);
throw new SoilProfileReadException(message, ProfileName, e);
}
}
@@ -345,11 +350,6 @@
/// The number of layers that the profile has to read.
///
public long LayerCount { get; }
-
- ///
- /// Gets the database identifier of the profile.
- ///
- public long ProfileId { get; }
}
}
}
\ No newline at end of file
Index: Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/SoilProfile2DReader.cs
===================================================================
diff -u -r933fdbe926cc6b1e5e48c431aa9aee035b5ff3d9 -r22cfdf3a1943df34a0e6cfd57c82faedfed781db
--- Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/SoilProfile2DReader.cs (.../SoilProfile2DReader.cs) (revision 933fdbe926cc6b1e5e48c431aa9aee035b5ff3d9)
+++ Ringtoets/Common/src/Ringtoets.Common.IO/SoilProfile/SoilProfile2DReader.cs (.../SoilProfile2DReader.cs) (revision 22cfdf3a1943df34a0e6cfd57c82faedfed781db)
@@ -156,11 +156,14 @@
/// Thrown when reading properties of the profile failed.
private SoilProfile2D TryReadSoilProfile()
{
- var properties = new RequiredProfileProperties(this);
+ long profileId = ReadProfileId();
+ RequiredProfileProperties properties;
var soilLayers = new List();
try
{
+ properties = new RequiredProfileProperties(this);
+
for (var i = 1; i <= properties.LayerCount; i++)
{
soilLayers.Add(ReadSoilLayerFrom(this, properties.ProfileName));
@@ -169,13 +172,13 @@
}
catch (SoilProfileReadException)
{
- MoveToNextProfile(properties.ProfileId);
+ MoveToNextProfile(profileId);
throw;
}
try
{
- return new SoilProfile2D(properties.ProfileId,
+ return new SoilProfile2D(profileId,
properties.ProfileName,
soilLayers)
{
@@ -191,6 +194,11 @@
}
}
+ private long ReadProfileId()
+ {
+ return dataReader.Read(SoilProfileTableDefinitions.SoilProfileId);
+ }
+
///
/// Reads a from the given .
///
@@ -299,9 +307,9 @@
}
catch (InvalidCastException e)
{
- string message = new FileReaderErrorMessageBuilder(reader.Path)
- .WithSubject(string.Format(Resources.SoilProfileReader_SoilProfileName_0_, profileName))
- .Build(string.Format(Resources.SoilProfileReader_Profile_has_invalid_value_on_Column_0_, readColumn));
+ string message = string.Format(Resources.SoilProfileReader_Profile_Name_0_has_invalid_value_on_Column_1,
+ profileName,
+ readColumn);
throw new SoilProfileReadException(message, profileName, e);
}
}
@@ -334,15 +342,12 @@
readColumn = SoilProfileTableDefinitions.LayerCount;
LayerCount = reader.Read(readColumn);
-
- readColumn = SoilProfileTableDefinitions.SoilProfileId;
- ProfileId = reader.Read(readColumn);
}
catch (InvalidCastException e)
{
- string message = new FileReaderErrorMessageBuilder(reader.Path)
- .WithSubject(string.Format(Resources.SoilProfileReader_SoilProfileName_0_, ProfileName))
- .Build(string.Format(Resources.SoilProfileReader_Profile_has_invalid_value_on_Column_0_, readColumn));
+ string message = string.Format(Resources.SoilProfileReader_Profile_Name_0_has_invalid_value_on_Column_1,
+ ProfileName,
+ readColumn);
throw new SoilProfileReadException(message, ProfileName, e);
}
}
@@ -361,11 +366,6 @@
/// The number of layers that the profile has to read.
///
public long LayerCount { get; }
-
- ///
- /// Gets the database identifier of the profile.
- ///
- public long ProfileId { get; }
}
}
}
\ No newline at end of file
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/SoilProfile/SoilProfile2DReaderTest.cs
===================================================================
diff -u -r80f04760977eeb1f2f2781ff9600ffa4d51b7060 -r22cfdf3a1943df34a0e6cfd57c82faedfed781db
--- Ringtoets/Common/test/Ringtoets.Common.IO.Test/SoilProfile/SoilProfile2DReaderTest.cs (.../SoilProfile2DReaderTest.cs) (revision 80f04760977eeb1f2f2781ff9600ffa4d51b7060)
+++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/SoilProfile/SoilProfile2DReaderTest.cs (.../SoilProfile2DReaderTest.cs) (revision 22cfdf3a1943df34a0e6cfd57c82faedfed781db)
@@ -213,9 +213,8 @@
// Assert
var exception = Assert.Throws(test);
- string expectedMessage = new FileReaderErrorMessageBuilder(dbFile)
- .WithSubject("ondergrondschematisatie 'Profile'")
- .Build("Ondergrondschematisatie bevat geen geldige waarde in kolom 'IntersectionX'.");
+ string expectedMessage = "Het lezen van de ondergrondschematisatie 'Profile' is mislukt. " +
+ "Geen geldige waarde in kolom 'IntersectionX'.";
Assert.AreEqual(expectedMessage, exception.Message);
Assert.IsInstanceOf(exception.InnerException);
}
Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/test-data/SoilProfile2DReader/2dProfileWithXInvalid.soil
===================================================================
diff -u -r4d2b702d8a5e4570ee53fa499f8f5fa196acdb98 -r22cfdf3a1943df34a0e6cfd57c82faedfed781db
Binary files differ