public void AddIpAddress(string ipAddress) { var itemDisplay = new BasicScanItemDisplay(ipAddress); if (this.BasicScanItemDisplays.Any(x => x.IPAddress == ipAddress)) { itemDisplay = this.BasicScanItemDisplays.Single(x => x.IPAddress == ipAddress); } else { this.BasicScanItemDisplays.Add(itemDisplay); } }
public void AddDomain(string ipAddress, string domain) { var host = Domain.GetHostByDomain(domain); var subdomain = domain.Replace($".{host}", string.Empty); if (host == subdomain && domain == subdomain) { subdomain = string.Empty; } var itemDisplay = new BasicScanItemDisplay(ipAddress); var domainDisplay = new DomainDisplay(host); if (this.BasicScanItemDisplays.Any(x => x.IPAddress == ipAddress)) { itemDisplay = this.BasicScanItemDisplays.Single(x => x.IPAddress == ipAddress); } else { this.BasicScanItemDisplays.Add(itemDisplay); } if (itemDisplay.DomainDisplays.Any(x => x.Host == host)) { domainDisplay = itemDisplay.DomainDisplays.Single(x => x.Host == host); } else { itemDisplay.DomainDisplays.Add(domainDisplay); } if (domainDisplay.Subdomains.Contains(subdomain) == false) { domainDisplay.Subdomains.Add(subdomain); } }