Ejemplo n.º 1
0
        public static NameSuggestResult Parse(string text)
        {
            try
            {
                var response = new NameSuggestResult();

                var doc = XDocument.Parse(text);

                var responseTime    = doc.XPathSelectElement(@"//item[@key=""request_response_time""]");
                var lookupArray     = doc.XPathSelectElement(@"//item[@key=""lookup""]/dt_assoc/item[@key=""items""]/dt_array");
                var suggestionArray = doc.XPathSelectElement(@"//item[@key=""suggestion""]/dt_assoc/item[@key=""items""]/dt_array");

                response.ResponseTime = TimeSpan.FromSeconds((float)responseTime);

                foreach (var item in ResponseHelper.ReadArray(lookupArray))
                {
                    response.Lookup.Add(new DomainItem(item["domain"], item["status"]));
                }

                foreach (var item in ResponseHelper.ReadArray(suggestionArray))
                {
                    response.Suggestions.Add(new DomainItem(item["domain"], item["status"]));
                }

                return(response);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message + "/ " + text);
            }
        }
Ejemplo n.º 2
0
 public async Task <NameSuggestResult> NameSuggestAsync(NameSuggestRequest request) =>
 NameSuggestResult.Parse(await SendAsync(request).ConfigureAwait(false));