Exemple #1
0
        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;
                }
            }
        }
Exemple #2
0
        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;
        }
Exemple #3
0
        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);
        }
Exemple #4
0
 static partial void InstanceFactory(ref ServerInfoWrapper instance, [CallerMemberName] string callerName = "");