private async Task RefreshServerList(CancellationToken cancel)
        {
            AllServers.Clear();
            Status = RefreshListStatus.Updating;

            try
            {
                using var response =
                          await _http.GetAsync(ConfigConstants.HubUrl + "api/servers", cancel);

                response.EnsureSuccessStatusCode();

                var respStr = await response.Content.ReadAsStringAsync(cancel);

                var entries = JsonConvert.DeserializeObject <List <ServerListEntry> >(respStr);

                Status = RefreshListStatus.Updated;

                AllServers.AddRange(entries.Select(e =>
                                                   new ServerEntryViewModel(_windowVm, e.Address)
                {
                    FallbackName = e.Name
                }));
            }
            catch (TaskCanceledException)
            {
                Status = RefreshListStatus.NotUpdated;
            }
            catch (Exception e)
            {
                Log.Error(e, "Failed to fetch server list due to exception.");
                Status = RefreshListStatus.Error;
            }
        }
        private async Task RefreshServerList()
        {
            AllServers.Clear();
            Status = RefreshListStatus.Updating;

            try
            {
                var response = await Global.GlobalHttpClient.GetStringAsync(HubUrl + "api/servers");

                var entries = JsonConvert.DeserializeObject <List <ServerListEntry> >(response);

                Status = RefreshListStatus.Updated;

                AllServers.AddRange(entries.Select(e =>
                                                   new ServerEntryViewModel(_statusCache, _cfg, _updater, e.Address)
                {
                    FallbackName = e.Name
                }));
            }
            catch (Exception e)
            {
                Console.WriteLine("Failed to fetch server list due to exception:\n{0}", e);
                Status = RefreshListStatus.Error;
            }
        }
 private void Setup(int portNr)
 {
     try
     {
         server = new CEthernetServer <ConnectionBase>(Name, "0.0.0.0", portNr, "TCP", clientBuffeSize, 0);
         log.Info($"{Name} started on port {portNr}");
     }
     catch
     {
         log.Error($"The name:{Name} does not occur in the RGOSerice list in the configuration ");
     }
     AllServers.Add(this);
 }
Пример #4
0
        private void RepopulateServerList()
        {
            SearchedServers.Clear();
            if (string.IsNullOrEmpty(SearchString))
            {
                SearchedServers.AddRange(AllServers);
            }
            else
            {
                SearchedServers.AddRange(AllServers.Where(s =>
                                                          s.Name.Contains(SearchString, StringComparison.CurrentCultureIgnoreCase)));
            }

            var alt = false;

            foreach (var server in SearchedServers)
            {
                server.IsAltBackground = alt;
                alt ^= true;
            }
        }
Пример #5
0
        private async Task RefreshServerList(CancellationToken cancel)
        {
            AllServers.Clear();
            Status = RefreshListStatus.Updating;

            try
            {
                using var response =
                          await Global.GlobalHttpClient.GetAsync(ConfigConstants.HubUrl + "api/servers", cancel);

                response.EnsureSuccessStatusCode();

                // TODO: .NET 5 has an overload of ReadAsStringAsync with cancellation support.
                var respStr = await response.Content.ReadAsStringAsync();

                cancel.ThrowIfCancellationRequested();

                var entries = JsonConvert.DeserializeObject <List <ServerListEntry> >(respStr);

                Status = RefreshListStatus.Updated;

                AllServers.AddRange(entries.Select(e =>
                                                   new ServerEntryViewModel(_statusCache, _cfg, _updater, _loginMgr, e.Address)
                {
                    FallbackName = e.Name
                }));
            }
            catch (TaskCanceledException)
            {
                Status = RefreshListStatus.NotUpdated;
            }
            catch (Exception e)
            {
                Log.Error(e, "Failed to fetch server list due to exception.");
                Status = RefreshListStatus.Error;
            }
        }