Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/AssessmentSectionMerger.cs =================================================================== diff -u -r0ba67df222878e9a8892f36c8f127f67dcb37213 -r198b7151de77fb25cf257faf356165af49406832 --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/AssessmentSectionMerger.cs (.../AssessmentSectionMerger.cs) (revision 0ba67df222878e9a8892f36c8f127f67dcb37213) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/AssessmentSectionMerger.cs (.../AssessmentSectionMerger.cs) (revision 198b7151de77fb25cf257faf356165af49406832) @@ -21,7 +21,10 @@ using System; using Core.Common.Gui; +using log4net; using Ringtoets.Integration.Data; +using CoreCommonGuiResources = Core.Common.Gui.Properties.Resources; +using RingtoetsStorageResources = Ringtoets.Storage.Core.Properties.Resources; namespace Ringtoets.Integration.Plugin { @@ -30,6 +33,8 @@ /// public class AssessmentSectionMerger { + private static readonly ILog log = LogManager.GetLogger(typeof(AssessmentSectionMerger)); + private readonly IInquiryHelper inquiryHandler; /// @@ -50,7 +55,21 @@ public void StartMerge() { - + SelectProject(); } + + private void SelectProject() + { + string filePath = inquiryHandler.GetSourceFileLocation(RingtoetsStorageResources.Ringtoets_project_file_filter); + if (filePath == null) + { + CancelMergeAndLog(); + } + } + + private static void CancelMergeAndLog() + { + log.Info(CoreCommonGuiResources.GuiImportHandler_ImportItemsUsingDialog_Importing_cancelled); + } } } \ No newline at end of file Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Ringtoets.Integration.Plugin.csproj =================================================================== diff -u -rdc5c060596974db6fc401c9abdbdfaea858132a2 -r198b7151de77fb25cf257faf356165af49406832 --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Ringtoets.Integration.Plugin.csproj (.../Ringtoets.Integration.Plugin.csproj) (revision dc5c060596974db6fc401c9abdbdfaea858132a2) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Ringtoets.Integration.Plugin.csproj (.../Ringtoets.Integration.Plugin.csproj) (revision 198b7151de77fb25cf257faf356165af49406832) @@ -144,6 +144,11 @@ Ringtoets.StabilityPointStructures.Forms False + + {50963f12-448c-41ba-a62c-cdb0ab8d21e0} + Ringtoets.Storage.Core + False + {567E0B69-5280-41CE-ADD6-443725A61C86} Ringtoets.WaveImpactAsphaltCover.Data Index: Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/AssessmentSectionMergerTest.cs =================================================================== diff -u -r0ba67df222878e9a8892f36c8f127f67dcb37213 -r198b7151de77fb25cf257faf356165af49406832 --- Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/AssessmentSectionMergerTest.cs (.../AssessmentSectionMergerTest.cs) (revision 0ba67df222878e9a8892f36c8f127f67dcb37213) +++ Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/AssessmentSectionMergerTest.cs (.../AssessmentSectionMergerTest.cs) (revision 198b7151de77fb25cf257faf356165af49406832) @@ -20,7 +20,10 @@ // All rights reserved. using System; +using Core.Common.Gui; +using Core.Common.TestUtil; using NUnit.Framework; +using Rhino.Mocks; namespace Ringtoets.Integration.Plugin.Test { @@ -37,5 +40,41 @@ var exception = Assert.Throws(call); Assert.AreEqual("inquiryHandler", exception.ParamName); } + + [Test] + public void StartMerge_FilePathNull_AbortAndShowCancelMessage() + { + // Setup + var mocks = new MockRepository(); + var inquiryHelper = mocks.StrictMock(); + inquiryHelper.Expect(helper => helper.GetSourceFileLocation(null)).IgnoreArguments().Return(null); + mocks.ReplayAll(); + + var merger = new AssessmentSectionMerger(inquiryHelper); + + // Call + Action call = () => merger.StartMerge(); + + // Assert + TestHelper.AssertLogMessageWithLevelIsGenerated(call, new Tuple("Importeren van gegevens is geannuleerd.", LogLevelConstant.Info), 1); + } + + [Test] + public void StartMerge_FilePathNotNull_Continue() + { + // Setup + var mocks = new MockRepository(); + var inquiryHelper = mocks.StrictMock(); + inquiryHelper.Expect(helper => helper.GetSourceFileLocation(null)).IgnoreArguments().Return(string.Empty); + mocks.ReplayAll(); + + var merger = new AssessmentSectionMerger(inquiryHelper); + + // Call + Action call = () => merger.StartMerge(); + + // Assert + TestHelper.AssertLogMessagesCount(call, 0); + } } } \ No newline at end of file Index: Ringtoets/Storage/src/Ringtoets.Storage.Core/Properties/Resources.Designer.cs =================================================================== diff -u -r1a6fd98e10550bee90154386e2243773d3fb41f5 -r198b7151de77fb25cf257faf356165af49406832 --- Ringtoets/Storage/src/Ringtoets.Storage.Core/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 1a6fd98e10550bee90154386e2243773d3fb41f5) +++ Ringtoets/Storage/src/Ringtoets.Storage.Core/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 198b7151de77fb25cf257faf356165af49406832) @@ -43,7 +43,7 @@ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources { + public class Resources { private static global::System.Resources.ResourceManager resourceMan; @@ -57,7 +57,7 @@ /// Returns the cached ResourceManager instance used by this class. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { + public static global::System.Resources.ResourceManager ResourceManager { get { if (object.ReferenceEquals(resourceMan, null)) { global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Ringtoets.Storage.Core.Properties.Resources", typeof(Resources).Assembly); @@ -72,7 +72,7 @@ /// resource lookups using this strongly typed resource class. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { + public static global::System.Globalization.CultureInfo Culture { get { return resourceCulture; } @@ -104,7 +104,7 @@ /// ///DROP TABLE [rest of string was truncated]";. /// - internal static string DatabaseStructure { + public static string DatabaseStructure { get { return ResourceManager.GetString("DatabaseStructure", resourceCulture); } @@ -113,7 +113,7 @@ /// /// Looks up a localized string similar to Er is een fout opgetreden in de verbinding met het Ringtoets bestand.. /// - internal static string Error_during_connection { + public static string Error_during_connection { get { return ResourceManager.GetString("Error_during_connection", resourceCulture); } @@ -122,7 +122,7 @@ /// /// Looks up a localized string similar to Een fout is opgetreden tijdens het opslaan van het Ringtoets bestand.. /// - internal static string Error_saving_database { + public static string Error_saving_database { get { return ResourceManager.GetString("Error_saving_database", resourceCulture); } @@ -131,7 +131,7 @@ /// /// Looks up a localized string similar to Een fout is opgetreden met schrijven naar het nieuwe Ringtoets bestand.. /// - internal static string Error_writing_structure_to_database { + public static string Error_writing_structure_to_database { get { return ResourceManager.GetString("Error_writing_structure_to_database", resourceCulture); } @@ -140,7 +140,7 @@ /// /// Looks up a localized string similar to Een kritieke fout voorkomt dat een vingerafdruk van de projectdata gemaakt kan worden.. /// - internal static string FingerprintHelper_Critical_error_message { + public static string FingerprintHelper_Critical_error_message { get { return ResourceManager.GetString("FingerprintHelper_Critical_error_message", resourceCulture); } @@ -149,7 +149,7 @@ /// /// Looks up a localized string similar to Ringtoetsproject (*.rtd)|*.rtd. /// - internal static string Ringtoets_project_file_filter { + public static string Ringtoets_project_file_filter { get { return ResourceManager.GetString("Ringtoets_project_file_filter", resourceCulture); } @@ -158,7 +158,7 @@ /// /// Looks up a localized string similar to Kan geen tijdelijk bestand maken van het originele bestand ({0}).. /// - internal static string SafeOverwriteFileHelper_CreateNewTemporaryFile_Cannot_create_temporary_FilePath_0_Try_change_save_location { + public static string SafeOverwriteFileHelper_CreateNewTemporaryFile_Cannot_create_temporary_FilePath_0_Try_change_save_location { get { return ResourceManager.GetString("SafeOverwriteFileHelper_CreateNewTemporaryFile_Cannot_create_temporary_FilePath_0" + "_Try_change_save_location", resourceCulture); @@ -168,7 +168,7 @@ /// /// Looks up a localized string similar to Kan het tijdelijke bestand ({0}) niet opruimen. Het tijdelijke bestand dient handmatig verwijderd te worden.. /// - internal static string SafeOverwriteFileHelper_DeleteTemporaryFile_Cannot_remove_temporary_FilePath_0_Try_removing_manually { + public static string SafeOverwriteFileHelper_DeleteTemporaryFile_Cannot_remove_temporary_FilePath_0_Try_removing_manually { get { return ResourceManager.GetString("SafeOverwriteFileHelper_DeleteTemporaryFile_Cannot_remove_temporary_FilePath_0_Tr" + "y_removing_manually", resourceCulture); @@ -178,7 +178,7 @@ /// /// Looks up a localized string similar to Er bestaat al een tijdelijk bestand ({0}) dat niet verwijderd kan worden. Dit bestand dient handmatig verwijderd te worden.. /// - internal static string SafeOverwriteFileHelper_RemoveAlreadyExistingTemporaryFile_Already_existing_temporary_file_at_FilePath_0_could_not_be_removed { + public static string SafeOverwriteFileHelper_RemoveAlreadyExistingTemporaryFile_Already_existing_temporary_file_at_FilePath_0_could_not_be_removed { get { return ResourceManager.GetString("SafeOverwriteFileHelper_RemoveAlreadyExistingTemporaryFile_Already_existing_tempo" + "rary_file_at_FilePath_0_could_not_be_removed", resourceCulture); @@ -188,7 +188,7 @@ /// /// Looks up a localized string similar to Kan het originele bestand ({0}) niet herstellen. Het tijdelijke bestand dient handmatig hersteld te worden.. /// - internal static string SafeOverwriteFileHelper_RestoreOriginalFile_Cannot_revert_to_original_FilePath_0_Try_reverting_manually { + public static string SafeOverwriteFileHelper_RestoreOriginalFile_Cannot_revert_to_original_FilePath_0_Try_reverting_manually { get { return ResourceManager.GetString("SafeOverwriteFileHelper_RestoreOriginalFile_Cannot_revert_to_original_FilePath_0_" + "Try_reverting_manually", resourceCulture); @@ -198,7 +198,7 @@ /// /// Looks up a localized string similar to Het project bevat te veel unieke objecten om een digitale vingerafdruk van te genereren.. /// - internal static string StorageSqLite_HasStagedProjectChanges_Project_contains_too_many_objects_to_generate_fingerprint { + public static string StorageSqLite_HasStagedProjectChanges_Project_contains_too_many_objects_to_generate_fingerprint { get { return ResourceManager.GetString("StorageSqLite_HasStagedProjectChanges_Project_contains_too_many_objects_to_genera" + "te_fingerprint", resourceCulture); @@ -208,7 +208,7 @@ /// /// Looks up a localized string similar to Het bestand is geen geldig Ringtoets bestand.. /// - internal static string StorageSqLite_LoadProject_Invalid_Ringtoets_database_file { + public static string StorageSqLite_LoadProject_Invalid_Ringtoets_database_file { get { return ResourceManager.GetString("StorageSqLite_LoadProject_Invalid_Ringtoets_database_file", resourceCulture); } @@ -217,7 +217,7 @@ /// /// Looks up a localized string similar to Database moet één rij in de VersionEntity tabel hebben.. /// - internal static string StorageSqLite_ValidateDatabaseVersion_Database_must_have_one_VersionEntity_row { + public static string StorageSqLite_ValidateDatabaseVersion_Database_must_have_one_VersionEntity_row { get { return ResourceManager.GetString("StorageSqLite_ValidateDatabaseVersion_Database_must_have_one_VersionEntity_row", resourceCulture); } @@ -226,7 +226,7 @@ /// /// Looks up a localized string similar to Ringtoets bestand versie '{0}' is hoger dan de huidig ondersteunde versie ('{1}'). Update Ringtoets naar een nieuwere versie.. /// - internal static string StorageSqLite_ValidateDatabaseVersion_DatabaseVersion_0_higher_then_current_DatabaseVersion_1_ { + public static string StorageSqLite_ValidateDatabaseVersion_DatabaseVersion_0_higher_then_current_DatabaseVersion_1_ { get { return ResourceManager.GetString("StorageSqLite_ValidateDatabaseVersion_DatabaseVersion_0_higher_then_current_Datab" + "aseVersion_1_", resourceCulture); @@ -236,7 +236,7 @@ /// /// Looks up a localized string similar to Ringtoets bestand versie '{0}' is niet valide. De versie van het Ringtoets projectbestand dient '16.4' of hoger te zijn.. /// - internal static string StorageSqLite_ValidateDatabaseVersion_DatabaseVersion_0_is_invalid { + public static string StorageSqLite_ValidateDatabaseVersion_DatabaseVersion_0_is_invalid { get { return ResourceManager.GetString("StorageSqLite_ValidateDatabaseVersion_DatabaseVersion_0_is_invalid", resourceCulture); } Index: Ringtoets/Storage/src/Ringtoets.Storage.Core/Ringtoets.Storage.Core.csproj =================================================================== diff -u -rba834431b63ea0985c60a0987ca8fb720f801ab6 -r198b7151de77fb25cf257faf356165af49406832 --- Ringtoets/Storage/src/Ringtoets.Storage.Core/Ringtoets.Storage.Core.csproj (.../Ringtoets.Storage.Core.csproj) (revision ba834431b63ea0985c60a0987ca8fb720f801ab6) +++ Ringtoets/Storage/src/Ringtoets.Storage.Core/Ringtoets.Storage.Core.csproj (.../Ringtoets.Storage.Core.csproj) (revision 198b7151de77fb25cf257faf356165af49406832) @@ -690,7 +690,7 @@ - ResXFileCodeGenerator + PublicResXFileCodeGenerator Resources.Designer.cs Designer