/// <summary> /// Allows to stop the adapter. /// /// Before returning, and if it is so configured, /// the adapter sends a "suspend" request to /// all the currently registred fixtures. /// </summary> public void Stop() { _logger.InfoFormat("Adapter is stopping"); try { if (_trigger != null) { var wait_handler = new ManualResetEvent(false); _trigger.Dispose(wait_handler); wait_handler.WaitOne(); wait_handler.Dispose(); _trigger = null; _fixtureManager.Dispose(); } if (PlatformConnector != null) { PlatformConnector.Dispose(); } UDAPIService.Disconnect(); } catch (Exception e) { _logger.Error("An error occured while disposing the adapter", e); } _stats.SetValue(AdapterCoreKeys.ADAPTER_STARTED, "0"); _logger.InfoFormat("Adapter stopped"); }
private void PopuplateAdapterVersionInfo() { var adapterVersionInfo = AdapterVersionInfo.GetAdapterVersionInfo() as AdapterVersionInfo; var executingAssembly = Assembly.GetExecutingAssembly(); var version = executingAssembly.GetName().Version; var adapterAssemblyVersion = version.ToString(); adapterVersionInfo.AdapterVersion = adapterAssemblyVersion; var sdkAssembly = Assembly.GetAssembly(typeof(ISession)); var sdkVersion = sdkAssembly.GetName().Version; var sdkVersionString = sdkVersion.ToString(); adapterVersionInfo.UdapiSDKVersion = sdkVersionString; if (PlatformConnector != null) { var pluginAssembly = Assembly.GetAssembly(PlatformConnector.GetType()); adapterVersionInfo.PluginName = pluginAssembly.GetName().Name; adapterVersionInfo.PluginVersion = pluginAssembly.GetName().Version.ToString(); } }