abandon method

  1. @override
Future abandon(
  1. MessageEnvelope message
)

Returnes message into the queue and makes it available for all subscribers to receive it again. This method is usually used to return a message which could not be processed at the moment to repeat the attempt.Messages that cause unrecoverable errors shall be removed permanently or/and send to dead letter _queue. Parameters:

  • message a message to return. Return Future that recive a null if all ok Throws error

Implementation

@override
Future abandon(MessageEnvelope message) async {
  _checkOpened('');

  // Make the message immediately visible
  amqp.AmqpMessage envelope = message.getReference();
  if (envelope != null) {
    envelope.reject(true);
    message.setReference(null);
    logger.trace(message.correlation_id, 'Abandoned message %s at %c',
        [message, name]);
  }
  return null;
}