From 26f13f9c89745470c4d02b511e01d5ce17bb41a4 Mon Sep 17 00:00:00 2001 From: Jarle Pedersen Date: Fri, 18 Sep 2020 10:31:11 +0200 Subject: [PATCH 1/4] read timeOut from app.config --- .../SynchController.cs | 20 ++++++++++++++++--- .../Test_Subscriber_NetCore/App.config | 3 +++ 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/Kartverket.Geosynkronisering.Subscriber/Kartverket.Geosynkronisering.Subscriber.BL/SynchController.cs b/Kartverket.Geosynkronisering.Subscriber/Kartverket.Geosynkronisering.Subscriber.BL/SynchController.cs index 4d030d34..ce36033b 100644 --- a/Kartverket.Geosynkronisering.Subscriber/Kartverket.Geosynkronisering.Subscriber.BL/SynchController.cs +++ b/Kartverket.Geosynkronisering.Subscriber/Kartverket.Geosynkronisering.Subscriber.BL/SynchController.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.ComponentModel; +using System.Configuration; using System.Diagnostics; using System.IO; using System.Linq; @@ -40,6 +41,9 @@ public void InitTransactionsSummary() public TransactionSummary TransactionsSummary; + private static int _timeout = -1; + private int timeout { get { return _timeout == -1 ? GetTimeout() : _timeout; } } + public IBindingList GetCapabilitiesProviderDataset(string url, string UserName, string Password) { var cdb = new CapabilitiesDataBuilder(url, UserName, Password); @@ -566,9 +570,7 @@ private void GetStatusForChangelogOnProvider(int datasetId, string changeLogId) var starttid = DateTime.Now; var elapsedTicks = DateTime.Now.Ticks - starttid.Ticks; - var elapsedSpan = new TimeSpan(elapsedTicks); - var timeout = 15; - //timeout = 50; // TODO: Fix for Norkart Provider, + var elapsedSpan = new TimeSpan(elapsedTicks); while ((changeLogStatus == ChangelogStatusType.queued || changeLogStatus == ChangelogStatusType.working) && elapsedSpan.Minutes < timeout) @@ -607,6 +609,18 @@ private void GetStatusForChangelogOnProvider(int datasetId, string changeLogId) } } + private static int GetTimeout() + { + var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal); + + var settings = config.GetSectionGroup("userSettings"); + var section = settings.Sections["Kartverket.Geosynkronisering.Subscriber.Properties.Subscriber"] as ClientSettingsSection; + + _timeout = int.Parse(section.Settings.Get("TimeOut").Value.ValueXml.InnerText); + + return _timeout; + } + private static List ChangeLogMapper(IEnumerable fileList, int datasetId) { var newFileList = new List(); diff --git a/Kartverket.Geosynkronisering.Subscriber/Test_Subscriber_NetCore/App.config b/Kartverket.Geosynkronisering.Subscriber/Test_Subscriber_NetCore/App.config index ab439b33..14132cc2 100644 --- a/Kartverket.Geosynkronisering.Subscriber/Test_Subscriber_NetCore/App.config +++ b/Kartverket.Geosynkronisering.Subscriber/Test_Subscriber_NetCore/App.config @@ -17,6 +17,9 @@ https://geosynk.nois.no/tilbyder/ + + 50 +