Example #1
0
        public async Task <string> Reverse(IP4Addr server)
        {
            await Task.Delay(100);             // simulate some async work

            if (!knownDomains.ContainsKey(server.Value))
            {
                throw new DNSClientException("Server " + server.ToString() + " not found.");
            }

            return(knownDomains[server.Value].Domain);
        }
Example #2
0
        public async Task <IP4Addr> Resolve(IP4Addr server, string subDomain)
        {
            await Task.Delay(500);             // simulate some async work

            if (!knownDomains.ContainsKey(server.Value))
            {
                throw new DNSClientException("Server " + server.ToString() + " not found.");
            }

            var node = knownDomains[server.Value];

            if (!node.Subdomains.ContainsKey(subDomain))
            {
                throw new DNSClientException("Subdomain " + subDomain + " not found on server " + server.ToString() + ".");
            }

            return(node.Subdomains[subDomain].Address);
        }