static void DoWorkStock() { try { _processingStock = true; ShopImport import = new ShopImport(); import.ProcessStock(); Console.WriteLine("Stock import Completed On: " + DateTime.Now); int minutes = 60; int hours = 0; int.TryParse(ConfigurationManager.AppSettings["ImportStockIntervalMinutes"], out minutes); int.TryParse(ConfigurationManager.AppSettings["ImportStockIntervalHours"], out hours); if (minutes > 0 || hours > 0) { log.InfoFormat("Next stock run in {0} hours and {1} minutes", hours, minutes); _stockTimer.Interval = (new TimeSpan(hours, minutes, 0)).TotalMilliseconds; _stockTimer.Start(); } _processingStock = false; _waitToEndStock.Set(); } catch (Exception ex) { log.Error("Error import stock", ex); } }
public static void Start() { _running = true; ShopImport import = new ShopImport(); import.ProcessOItems(); //#if DEBUG // _productsAndAttributesTimer.AutoReset = false; // _productsAndAttributes = new Thread(new ThreadStart(ProductsAndAttributes)); // _productsAndAttributes.Name = "ProductsAndAttributes"; // _productsAndAttributes.Start(); // _stockTimer.AutoReset = false; // _stock = new Thread(new ThreadStart(Stock)); // _stock.Name = "Stock"; // _stock.Start(); // _productsTimer.AutoReset = false; // _products = new Thread(new ThreadStart(Products)); // _products.Name = "Products"; // _products.Start(); //#endif }
static void DoWorkProductsAndAttribuites() { try { _processingProductsAndAttributes = true; if (ExecuteAtStartup && !productsprocessing) { productsprocessing = true; ShopImport import = new ShopImport(); import.ProcessProductsAndAttributes(); log.Info("Products and Attributes import Completed On: " + DateTime.Now); } else { ExecuteAtStartup = true; } int minutes = 60; int hours = 0; int.TryParse(ConfigurationManager.AppSettings["ImportProductAndAttributesIntervalMinutes"], out minutes); int.TryParse(ConfigurationManager.AppSettings["ImportProductAndAttributesIntervalHours"], out hours); if (minutes > 0 || hours > 0) { log.InfoFormat("Next products and Attributes run in {0} hours and {1} minutes", hours, minutes); _productsAndAttributesTimer.Interval = (new TimeSpan(hours, minutes, 0)).TotalMilliseconds; _productsAndAttributesTimer.Start(); } productsprocessing = false; _processingProductsAndAttributes = false; _waitToEndProductsAndAttibutes.Set(); } catch (Exception ex) { log.Error("Error import products and Attributes", ex); } }