private void ServerStartStop_OnClick(object sender, RoutedEventArgs e) { if (Netst.Settings.Volatile.TestRunning) { // Stop tests Netst.Settings.Volatile.ActiveAnnouncer?.Stop(); Netst.Settings.Volatile.ActiveTracker?.Abort(); Netst.Settings.Volatile.TestRunning = false; ActiveServer.Instance.Stop(); Netst.Settings.Volatile.ActiveServer = null; TestRunning = false; } else { // Start tests if (Netst.Settings.Volatile.SelectedTestAdapter == null) { MessageBox.Show("No Network Interface selected for testing.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (!Netst.Settings.Volatile.SelectedTestAdapter.IsActive) { MessageBox.Show("The selected NetworkInterface is not active.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } int port; if (!int.TryParse(SelectedServerPortString, out port) || port <= 30 || port >= ushort.MaxValue) { MessageBox.Show("Invalid port number specified.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } try { ServerInfoWrapper wrapper = new ServerInfoWrapper(new Server(Netst.Settings.Volatile.SelectedTestAdapter.Ipv4Address, (ushort)port, Netst.Settings.Volatile.PreferUdp)); ActiveServer = wrapper; Netst.Settings.Volatile.ActiveServer = ActiveServer.Instance; ActiveServer.Instance.Start(); Netst.Settings.Volatile.TestRunning = true; ClientConnectPortStr = port.ToString(); TestRunning = true; if (Netst.Settings.Persistent.AnnounceServer) { AnnouncerStartWindow.ShowAndStart(); } Netst.Settings.Volatile.TryAttachTracker(); } catch (Exception exception) { MessageBox.Show("Failed to start the server on the specified Address and Port.\n\n" + exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); throw; } } }
private void Page_OnIsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e) { if (Netst.Settings.Volatile.ActiveServer != null) { ActiveServer = new ServerInfoWrapper(Netst.Settings.Volatile.ActiveServer); } TestRunning = Netst.Settings.Volatile.TestRunning; }
internal static ServerInfoWrapper GetInstance() { ServerInfo real = default(ServerInfo); RealInstanceFactory(ref real); var instance = (ServerInfoWrapper)ServerInfoWrapper.GetWrapper(real); InstanceFactory(ref instance); if (instance == null) { Assert.Inconclusive("Could not Create Test Instance"); } return(instance); }
static partial void InstanceFactory(ref ServerInfoWrapper instance, [CallerMemberName] string callerName = "");