From 1b00b0ba09ac6ff1cde4643a94ead0c3e94e8f41 Mon Sep 17 00:00:00 2001 From: Shreyas Zare Date: Sat, 23 Apr 2022 17:50:10 +0530 Subject: [PATCH] CacheZoneTree: renamed TryRemove() to TryRemoveTree() and added out int to return number of removed entries from the all the cache zones. --- DnsServerCore/Dns/Trees/CacheZoneTree.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/DnsServerCore/Dns/Trees/CacheZoneTree.cs b/DnsServerCore/Dns/Trees/CacheZoneTree.cs index d236ff7b..6d8a1fdf 100644 --- a/DnsServerCore/Dns/Trees/CacheZoneTree.cs +++ b/DnsServerCore/Dns/Trees/CacheZoneTree.cs @@ -37,9 +37,13 @@ namespace DnsServerCore.Dns.Trees #region public - public override bool TryRemove(string domain, out CacheZone value) + public bool TryRemoveTree(string domain, out CacheZone value, out int removedEntries) { bool removed = TryRemove(domain, out value, out Node currentNode); + if (removed) + removedEntries = value.TotalEntries; + else + removedEntries = 0; //remove all cache zones under current zone Node current = currentNode; @@ -59,6 +63,7 @@ namespace DnsServerCore.Dns.Trees current.RemoveNodeValue(v.Key, out _); //remove node value current.CleanThisBranch(); removed = true; + removedEntries += zone.TotalEntries; } } }