protected override void ShutdownServer(RunFrame frame) { var serverInitiator = frame.GetState(KeyServerInitiator) as KatanaSelfHostServerInitiator; if (serverInitiator != null) { serverInitiator.Dispose(); frame.SetState(KeyServerInitiator, null); } var sandbox = frame.GetState(KeySandbox) as AppDomain; if (sandbox != null) { AppDomain.Unload(sandbox); frame.SetState(KeySandbox, null); } var securedServer = frame.GetState(KeyIsSecuredServer) ?? false; if ((bool)securedServer) { var port = frame.GetState(KeyReservedPort) as string; TeardownSecureEnvironment(port); frame.SetState(KeyIsSecuredServer, null); } }
protected override void ShutdownServer(RunFrame frame) { var context = frame.GetState(KeyWebHostContext) as WebHostContext; if (context != null) { try { context.HostOptions.Stop(); } finally { ConfigurationTearDown(context); context.HostOptions.Dispose(); } } frame.SetState(KeyBaseAddresss, null); }
/// <summary> /// Assign base address uri to the property marked by <paramref name="NuwaBaseAddressAttribute"/> /// assuming that there are not more than 1 property is marked by the attribute /// </summary> protected void SetBaseAddress(object testClass, RunFrame frame) { var baseAddress = frame.GetState(KeyBaseAddresss) as string; var testClassType = testClass.GetType(); /// TODO: 1. check the number of marked property in test class command /// TODO: 2. to complain of the property type is not correct var baseAddressPrpt = testClassType.GetProperties() .Where(prop => { return(prop.GetCustomAttributes(typeof(NuwaBaseAddressAttribute), false).Length == 1); }) .FirstOrDefault(); if (baseAddressPrpt != null && NuwaBaseAddressAttribute.Verify(baseAddressPrpt)) { baseAddressPrpt.SetValue(testClass, baseAddress, null); } else { // TODO: warning } }
/// <summary> /// Assign base address uri to the property marked by <paramref name="NuwaBaseAddressAttribute"/> /// assuming that there are not more than 1 property is marked by the attribute /// </summary> protected void SetBaseAddress(object testClass, RunFrame frame) { var baseAddress = frame.GetState(KeyBaseAddresss) as string; var testClassType = testClass.GetType(); /// TODO: 1. check the number of marked property in test class command /// TODO: 2. to complain of the property type is not correct var baseAddressPrpt = testClassType.GetProperties() .Where(prop => { return prop.GetCustomAttributes(typeof(NuwaBaseAddressAttribute), false).Length == 1; }) .FirstOrDefault(); if (baseAddressPrpt != null && NuwaBaseAddressAttribute.Verify(baseAddressPrpt)) { baseAddressPrpt.SetValue(testClass, baseAddress, null); } else { // TODO: warning } }