예제 #1
0
        public static async Task StartInternalAppServer(
            IDictionary <string, object> stepParameters,
            IDictionary <string, object> pluginParameters)
        {
            LocalhostAppServer localAppServer = null;

            stepParameters.TryGetTypedValue(SignalRConstants.Type,
                                            out string type, Convert.ToString);
            stepParameters.TryGetTypedValue(SignalRConstants.HubUrls,
                                            out string urls, Convert.ToString);
            if (pluginParameters.TryGetValue($"{SignalRConstants.LocalhostAppServer}.{type}", out _))
            {
                pluginParameters.TryGetTypedValue($"{SignalRConstants.LocalhostAppServer}.{type}",
                                                  out localAppServer, (obj) => (LocalhostAppServer)obj);
            }
            else
            {
                // connection string is stored in 'urls'
                localAppServer = new LocalhostAppServer(urls);
                pluginParameters[$"{SignalRConstants.LocalhostAppServer}.{type}"] = localAppServer;
            }
            if (!localAppServer.IsStarted)
            {
                await localAppServer.Start();
            }
        }
예제 #2
0
        public static async Task StopInternalAppServer(
            IDictionary <string, object> stepParameters,
            IDictionary <string, object> pluginParameters)
        {
            LocalhostAppServer localAppServer = null;

            stepParameters.TryGetTypedValue(SignalRConstants.Type,
                                            out string type, Convert.ToString);
            if (pluginParameters.TryGetValue($"{SignalRConstants.LocalhostAppServer}.{type}", out _))
            {
                pluginParameters.TryGetTypedValue($"{SignalRConstants.LocalhostAppServer}.{type}",
                                                  out localAppServer, (obj) => (LocalhostAppServer)obj);
            }
            if (localAppServer != null &&
                localAppServer.IsStarted)
            {
                await localAppServer.Stop();
            }
        }