Esempio n. 1
0
        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            if (producerWorkerConfigProvider.UseExchange())
            {
                Console.WriteLine($"Publishing on exchange '{producerWorkerConfigProvider.GetExchangeName()}' using routing '{producerWorkerConfigProvider.GetRoutingKey()}'. Exchange type: '{producerWorkerConfigProvider.GetExchangeType()}'");
            }
            else
            {
                Console.WriteLine($"Publishing on queue '{producerWorkerConfigProvider.GetQueueName()}'");
            }

            var i = 0;

            while (!stoppingToken.IsCancellationRequested)
            {
                if (producerWorkerConfigProvider.UseExchange())
                {
                    await eventBusDispatcher.ExchangePublishAsync(
                        $"[Worker {producerWorkerConfigProvider.GetWorkerName()}] Message {++i}",
                        producerWorkerConfigProvider.GetExchangeName(),
                        producerWorkerConfigProvider.GetRoutingKey(),
                        producerWorkerConfigProvider.GetExchangeType());
                }
                else
                {
                    await eventBusDispatcher.QueuePublishAsync(
                        $"[Worker {producerWorkerConfigProvider.GetWorkerName()}] Message {++i}",
                        producerWorkerConfigProvider.GetQueueName());
                }

                await Task.Delay(producerWorkerConfigProvider.GetProductionInterval(), stoppingToken);
            }
        }
 public async Task OnPost()
 {
     await eventBusDispatcher.ExchangePublishAsync(Message, Exchange, RoutingKey);
 }