예제 #1
0
        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            try
            {
                var channel = _connection.CreateModel();
                _rabbitService.DeclareQueue(ref channel);

                var rand = new Random();
                while (!stoppingToken.IsCancellationRequested)
                {
                    await Task.Delay(1000, stoppingToken);

                    var jsonCarro = JsonSerializer.Serialize(new Car {
                        Brand = "Teste", Model = $"Ts {rand.Next(1, int.MaxValue)}"
                    });
                    _rabbitService.CreateQueue(jsonCarro, ref channel);
                    _logger.LogInformation($"Linha Criada: {jsonCarro}");
                }
            }
            catch (Exception ex)
            {
                _logger.LogInformation($"ERRO NA CRIAÇÃO DA LINHA");
                _logger.LogError($"ERRO:{ex.Message}", ex);
                throw;
            }
        }
예제 #2
0
 public void CreateQueue(string name, bool durable = false, bool exclusive = false, bool autoDelete = false, IDictionary <string, object> arguments = null)
 {
     _internal.CreateQueue(name, durable, exclusive, autoDelete, arguments);
 }
예제 #3
0
 public void Start()
 {
     _rabbitService.CreateQueue("test", autoDelete: true);
     _rabbitService.CreateExchange("test", autoDelete: true);
     _rabbitService.Bind("test", "test");
 }