Implements an immutable receive buffer that buffers incoming messages until they can be safely delivered. This buffer works together with a pekko.remote.AckedSendBuffer on the sender() side.
Value parameters
buf
Buffer of messages that are waiting for delivery
cumulativeAck
The highest sequence number received so far.
lastDelivered
Sequence number of the last message that has been delivered.
Extract all messages that could be safely delivered, an updated ack to be sent to the sender(), and an updated buffer that has the messages removed that can be delivered.
Extract all messages that could be safely delivered, an updated ack to be sent to the sender(), and an updated buffer that has the messages removed that can be delivered.
Attributes
Returns
Triplet of the updated buffer, messages that can be delivered and the updated acknowledgement.
Merges two receive buffers. Merging preserves sequencing of messages, and drops all messages that has been safely acknowledged by any of the participating buffers. Also updates the expected sequence numbers.
Merges two receive buffers. Merging preserves sequencing of messages, and drops all messages that has been safely acknowledged by any of the participating buffers. Also updates the expected sequence numbers.