Aspectacular.AzureQueueMulticastRoute.ForwardMessages C# (CSharp) Method

ForwardMessages() private method

private ForwardMessages ( int inboundMessageCount, IList inboundMessages, Stopwatch stopWatch ) : void
inboundMessageCount int
inboundMessages IList
stopWatch Stopwatch
return void
        private void ForwardMessages(int inboundMessageCount, IList<CloudQueueMessage> inboundMessages, Stopwatch stopWatch)
        {
            if(this.DestinationQueues.Count == 1)
                // Special case: no need to incur the overhead of parallelism.
                PostMessagesToDestQueue(this.DestinationQueues[0], inboundMessages);
            else
                // Push messages to destination queues in parallel.
                this.DestinationQueues.AsParallel().ForAll(destQueue => PostMessagesToDestQueue(destQueue, inboundMessages));

            this.LogInformation("Done forwarding {0} messages to {1} queues. Elapsed {2}.", inboundMessageCount, this.DestinationQueues.Count, stopWatch.Elapsed);
            stopWatch.Reset();
            stopWatch.Start();
        }