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

PublishToEachGroup() private method

private PublishToEachGroup ( string path, object message ) : void
path string
message object
return void
        private void PublishToEachGroup(string path, object message)
        {
            var prefix = path + "/";
            var lastKey = path + "0";   // '0' is the next char of '/'

            var groups = ExtractGroups(prefix, lastKey).GroupBy(kv => kv.Key);
            var wrappedMessage = new SendToOneSubscriber(message);

            foreach (var g in groups)
            {
                var routees = g.Select(r => r.Value).ToArray();
                if (routees.Length != 0)
                    new Router(_settings.RoutingLogic, routees).Route(wrappedMessage, Sender);
            }
        }