public void Shutdown() { try { if (null != _declare_timer) { _declare_timer.Elapsed -= _declare_timer_Elapsed; _declare_timer.Stop(); _declare_timer.Dispose(); } } catch { } _declare_timer = null; _declare_scanning = false; try { if (null != _rabbit_timer) { _rabbit_timer.Elapsed -= _rabbit_timer_Elapsed; _rabbit_timer.Stop(); _rabbit_timer.Dispose(); } } catch { } _rabbit_timer = null; _rabbit_scanning = false; if (null != taaMQclient) { taaMQclient.OnMessageArrived -= TaaMQclient_OnMessageArrived; taaMQclient.Disconnect(); } taaMQclient = null; if (null != todMQclient) { todMQclient.OnMessageArrived -= TodMQclient_OnMessageArrived; todMQclient.Disconnect(); } todMQclient = null; if (null != server) { server.Dispose(); } server = null; ReleaseOwinFirewall(); // Shutdown database server. LocalDbServer.Instance.Shutdown(); }
public void Start() { _rabbit_scanning = false; _rabbit_timer = new System.Timers.Timer(); _rabbit_timer.Interval = 1000; _rabbit_timer.Elapsed += _rabbit_timer_Elapsed; _rabbit_timer.Start(); _declare_scanning = false; _declare_timer = new System.Timers.Timer(); _declare_timer.Interval = 1000; _declare_timer.Elapsed += _declare_timer_Elapsed; _declare_timer.Start(); MethodBase med = MethodBase.GetCurrentMethod(); // Start database server. LocalDbServer.Instance.Start(); if (null == server) { InitOwinFirewall(); server = WebApp.Start <StartUp>(url: baseAddress); } if (null == taaMQclient) { var MQConfig = (null != ConfigManager.Instance.Plaza.TARabbitMQ) ? ConfigManager.Instance.Plaza.TARabbitMQ.RabbitMQ : null; if (null != MQConfig && MQConfig.Enabled) { //WriteTAFile("init"); med.Info("Rabbit Host Info: " + MQConfig.GetString()); try { taaMQclient = new RabbitMQClient(); taaMQclient.HostName = MQConfig.HostName; taaMQclient.PortNumber = MQConfig.PortNumber; taaMQclient.VirtualHost = MQConfig.VirtualHost; taaMQclient.UserName = MQConfig.UserName; taaMQclient.Password = MQConfig.Password; taaMQclient.OnMessageArrived += TaaMQclient_OnMessageArrived; if (taaMQclient.Connect() && taaMQclient.Listen(MQConfig.QueueName)) { med.Info("Success connected to : " + MQConfig.GetString()); med.Info("Listen to Queue: " + MQConfig.QueueName); } else { med.Err("failed connected to : " + MQConfig.HostName); } } catch (Exception ex) { med.Err(ex); } } } if (null == todMQclient) { var MQConfig = (null != ConfigManager.Instance.Plaza.TODRabbitMQ) ? ConfigManager.Instance.Plaza.TODRabbitMQ.RabbitMQ : null; if (null != MQConfig && MQConfig.Enabled) { //WriteTODFile("init"); med.Info("Rabbit Host Info: " + MQConfig.GetString()); try { todMQclient = new RabbitMQClient(); todMQclient.HostName = MQConfig.HostName; taaMQclient.PortNumber = MQConfig.PortNumber; todMQclient.VirtualHost = MQConfig.VirtualHost; todMQclient.UserName = MQConfig.UserName; todMQclient.Password = MQConfig.Password; todMQclient.OnMessageArrived += TodMQclient_OnMessageArrived; if (todMQclient.Connect() && todMQclient.Listen(MQConfig.QueueName)) { med.Info("Success connected to : " + MQConfig.GetString()); med.Info("Listen to Queue: " + MQConfig.QueueName); } else { med.Err("failed connected to : " + MQConfig.HostName); } } catch (Exception ex) { med.Err(ex); } } } }