private void ParseHostConfig(HostsConfig hostConfig, string listener = "") { if (_hostConfigCache != null) { foreach (var host in _hostConfigCache.Hosts) { foreach (var ipAddress in host.IpAddresses) { var(domainName, ptrRecords) = host.ToPtrRecords(ipAddress); var question = new DnsQuestion(DomainName.Parse(domainName), RecordType.Ptr, RecordClass.INet); RemoveCacheItem(question); } foreach (var domainName in host.DomainNames) { var tempHost = host.ToAddressRecord(domainName); var question = new DnsQuestion(DomainName.Parse(domainName), tempHost.First().RecordType, RecordClass.INet); RemoveCacheItem(question); } } } _hostConfigCache = (HostsConfig)hostConfig.Clone(); if (_hostConfigCache == null) { return; } { foreach (var host in _hostConfigCache.Hosts) { foreach (var ipAddress in host.IpAddresses) { var(domainName, ptrRecords) = host.ToPtrRecords(ipAddress); var question = new DnsQuestion(DomainName.Parse(domainName), RecordType.Ptr, RecordClass.INet); StoreInCache(question, ptrRecords.Cast <DnsRecordBase>().ToList()); } foreach (var domainName in host.DomainNames) { var tempHost = host.ToAddressRecord(domainName); var question = new DnsQuestion(DomainName.Parse(domainName), tempHost.First().RecordType, RecordClass.INet); StoreInCache(question, tempHost.Cast <DnsRecordBase>().ToList()); } } } }
private void HostsConfigListener(HostsConfig hostsConfig, string name) { }