コード例 #1
0
        public void AddServer(Fork.Logic.Model.Settings.Server server, string name)
        {
            NetworkExternalServer networkExternalServer = new NetworkExternalServer(server, name);

            if (!Network.Config.servers.ContainsKey(name))
            {
                Application.Current.Dispatcher?.Invoke(() => Servers.Add(networkExternalServer));
                SaveSettings();
            }
        }
コード例 #2
0
        private void LoadServersFromConfig(BungeeSettings settings)
        {
            while (!ServerManager.Initialized)
            {
                Thread.Sleep(500);
            }

            List <NetworkServer> servers = new List <NetworkServer>();

            if (settings.servers == null)
            {
                Servers = new ObservableCollection <NetworkServer>();
                return;
            }

            foreach (var settingsServer in settings.servers)
            {
                string name = settingsServer.Key;
                if (settingsServer.Value.ForkServer)
                {
                    EntityViewModel viewModel =
                        ServerManager.Instance.GetEntityViewModelByUid(settingsServer.Value.ForkServerUid);
                    if (viewModel is ServerViewModel serverViewModel)
                    {
                        NetworkForkServer server = new NetworkForkServer(serverViewModel, settingsServer.Value, name);
                        servers.Add(server);
                    }
                    else
                    {
                        Console.WriteLine("[FATAL] Error finding server with UID " +
                                          settingsServer.Value.ForkServerUid + " for network " + Network.Name);
                        ErrorLogger.Append(new Exception("[FATAL] Error finding server with UID " +
                                                         settingsServer.Value.ForkServerUid + " for network " +
                                                         Network.Name));
                    }
                }
                else
                {
                    NetworkExternalServer server = new NetworkExternalServer(settingsServer.Value, name);
                    servers.Add(server);
                }
            }

            Servers = new ObservableCollection <NetworkServer>(servers);
        }