Akka.Cluster.Tools.PublishSubscribe.DistributedPubSubMediator.ExtractGroups C# (CSharp) Method

ExtractGroups() private method

private ExtractGroups ( string prefix, string lastKey ) : Routee>>.IEnumerable
prefix string
lastKey string
return Routee>>.IEnumerable
        private IEnumerable<KeyValuePair<string, Routee>> ExtractGroups(string prefix, string lastKey)
        {
            foreach (var bucket in _registry.Values)
            {
                //TODO: optimize into tree-aware key range [prefix, lastKey]
                foreach (var keyVal in bucket.Content.Where(kv => kv.Key.CompareTo(prefix) != -1 && kv.Key.CompareTo(lastKey) != 1))
                {
                    yield return new KeyValuePair<string, Routee>(keyVal.Key, keyVal.Value.Routee);
                }
            }
        }