/// <summary>
        ///     Various random bits of information that describe the whole system.
        /// </summary>
        /// <param name="source"></param>
        /// <param name="lengthsCriteria">Criteria for getting samples of queue length data</param>
        /// <param name="ratesCriteria">Criteria for getting samples of rate data</param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public static Overview GetOverview(
            [NotNull] this IManagementClient source,
            GetLengthsCriteria lengthsCriteria  = null,
            GetRatesCriteria ratesCriteria      = null,
            CancellationToken cancellationToken = default
            )
        {
            if (source == null)
            {
                throw new ArgumentNullException(nameof(source));
            }

            return(source.GetOverviewAsync(lengthsCriteria, ratesCriteria, cancellationToken)
                   .GetAwaiter()
                   .GetResult());
        }
Beispiel #2
0
        public async Task Should_get_overview()
        {
            var overview = await managementClient.GetOverviewAsync().ConfigureAwait(false);

            Console.Out.WriteLine("overview.ManagementVersion = {0}", overview.ManagementVersion);
            foreach (var exchangeType in overview.ExchangeTypes)
            {
                Console.Out.WriteLine("exchangeType.Name = {0}", exchangeType.Name);
            }
            foreach (var listener in overview.Listeners)
            {
                Console.Out.WriteLine("listener.IpAddress = {0}", listener.IpAddress);
            }

            Console.Out.WriteLine("overview.Messages = {0}", overview.QueueTotals?.Messages ?? 0);

            foreach (var context in overview.Contexts)
            {
                Console.Out.WriteLine("context.Description = {0}", context.Description);
            }
        }