Interface ISQSMessageCommunication
Provides APIs for the IMessageManager to communicate back to SQS the status of a Message.
public interface ISQSMessageCommunication
Methods
DeleteMessagesAsync(IEnumerable<MessageEnvelope>, CancellationToken)
Delete the message in the underlying service.
Task DeleteMessagesAsync(IEnumerable<MessageEnvelope> messages, CancellationToken token = default)
Parameters
messages
IEnumerable<MessageEnvelope>The messages to delete.
token
CancellationTokenOptional token to cancel the deletion.
Returns
ExtendMessageVisibilityTimeoutAsync(IEnumerable<MessageEnvelope>, CancellationToken)
Inform the underlying service to extend the message's visibility timeout because the message is still being processed.
Task ExtendMessageVisibilityTimeoutAsync(IEnumerable<MessageEnvelope> messages, CancellationToken token = default)
Parameters
messages
IEnumerable<MessageEnvelope>The messages to extend their visibility timeout.
token
CancellationTokenOptional token to cancel the visibility timeout extension.
Returns
ReportMessageFailureAsync(MessageEnvelope, CancellationToken)
Report back to the communication implementer when a message failed to be processed.
ValueTask ReportMessageFailureAsync(MessageEnvelope message, CancellationToken token = default)
Parameters
message
MessageEnvelopeThe MessageEnvelope that was not processed correctly.
token
CancellationTokenOptional token to cancel the reporting of the failure to process the message.