コード例 #1
0
        public static List <NetworkServer> Parse(NetworkServerResponse response)
        {
            var result = new List <NetworkServer>();

            if (response.Response.Contains(DELIMITER))
            {
                var tokens = response.Response.Split(DELIMITER, StringSplitOptions.RemoveEmptyEntries);

                foreach (var token in tokens)
                {
                    result.Add(NetworkServer.Parse(response, token));
                }
            }

            return(result);
        }
コード例 #2
0
#pragma warning restore IDE1006 // Naming Styles

        public static NetworkServer Parse(NetworkServerResponse response, string data)
        {
            var result = new NetworkServer()
            {
                Response = response
            };

            if (data.Contains(DELIMITER))
            {
                var tokens = data.Split(DELIMITER, StringSplitOptions.RemoveEmptyEntries);

                for (var i = 0; i < tokens.Length; i += 2)
                {
                    //Must have a matching pair
                    if (i + 1 < tokens.Length)
                    {
                        switch (tokens[i])
                        {
                        case nameof(ServerName):
                            result.ServerName = tokens[i + 1];
                            break;

                        case nameof(InstanceName):
                            result.InstanceName = tokens[i + 1];
                            break;

                        case nameof(IsClustered):
                            result.IsClustered = String.Equals(tokens[i + 1], "yes", StringComparison.OrdinalIgnoreCase);
                            break;

                        case nameof(Version):
                            result.Version = tokens[i + 1];
                            break;

                        case nameof(np):
                            result.np = tokens[i + 1];
                            break;

                        case nameof(tcp):
                            result.tcp = tokens[i + 1];
                            break;

                        case nameof(via):
                            result.via = tokens[i + 1];
                            break;

                        case nameof(rpc):
                            result.rpc = tokens[i + 1];
                            break;

                        case nameof(spx):
                            result.spx = tokens[i + 1];
                            break;

                        case nameof(adsp):
                            result.adsp = tokens[i + 1];
                            break;

                        case nameof(bv):
                            result.bv = tokens[i + 1];
                            break;
                        }
                    }
                }
            }

            return(result);
        }