public void Requeue(Message message, int delayMilliseconds) { if (delayMilliseconds > 0) { _messageProducer.SendWithDelay(message, delayMilliseconds); } else { _messageProducer.Send(message); } }
public void Requeue(Message message, int delayMilliseconds) { var topic = message.Header.Topic; s_logger.LogInformation("Requeuing message with topic {Topic} and id {Id}.", topic, message.Id); if (delayMilliseconds > 0) { _messageProducer.SendWithDelay(message, delayMilliseconds); } else { _messageProducer.Send(message); } }
public void Requeue(Message message, int delayMilliseconds) { var topic = message.Header.Topic; _logger.Value.Info($"Requeuing message with topic {topic} and id {message.Id}."); if (delayMilliseconds > 0) { _messageProducer.SendWithDelay(message, delayMilliseconds); } else { _messageProducer.Send(message); } }
public void When_reading_a_delayed_message_via_the_messaging_gateway() { _messageProducer.SendWithDelay(_message, 3000); var immediateResult = _messageConsumer.Receive(0).First(); var deliveredWithoutWait = immediateResult.Header.MessageType == MessageType.MT_NONE; //_should_have_not_been_able_get_message_before_delay deliveredWithoutWait.Should().BeTrue(); var delayedResult = _messageConsumer.Receive(10000).First(); //_should_send_a_message_via_rmq_with_the_matching_body delayedResult.Body.Value.Should().Be(_message.Body.Value); }
public void When_reading_a_delayed_message_via_the_messaging_gateway() { _messageProducer.SendWithDelay(_message, 1000); var immediateResult = _client.Listen(0, true); _immediateReadIsNull = immediateResult == null; var delayedResult = _client.Listen(2000); _messageBody = delayedResult.GetBody(); _messageHeaders = delayedResult.GetHeaders(); //_should_have_not_been_able_get_message_before_delay _immediateReadIsNull.Should().BeTrue(); //_should_send_a_message_via_rmq_with_the_matching_body _messageBody.Should().Be(_message.Body.Value); //_should_send_a_message_via_rmq_with_delay_header _messageHeaders.Keys.Should().Contain(HeaderNames.DELAY_MILLISECONDS); //_should_received_a_message_via_rmq_with_delayed_header _messageHeaders.Keys.Should().Contain(HeaderNames.DELAYED_MILLISECONDS); }