retrieveMessages static method
Future<RetrieveMessagesResponse>
retrieveMessages(
- P2PStream stream,
- PeerId peerId, {
- String? folderPath,
- int? fromSequence,
- int? maxMessages,
- MessagePriority? minPriority,
Retrieve messages (client-side)
Implementation
static Future<RetrieveMessagesResponse> retrieveMessages(
P2PStream stream,
PeerId peerId, {
String? folderPath,
int? fromSequence,
int? maxMessages,
MessagePriority? minPriority,
}) async {
try {
final request = RetrieveMessagesRequest(
peerId: peerId,
folderPath: folderPath,
fromSequence: fromSequence,
maxMessages: maxMessages,
minPriority: minPriority,
);
// Encode and send request with length prefix
final requestBytes = AccessFrame.encodeRetrieveRequest(request);
await _writeFrameStatic(stream, requestBytes);
// Read response
final responseBytes = await _readFrameStatic(stream);
return AccessFrame.decodeRetrieveResponse(responseBytes);
} catch (e, stackTrace) {
_logger.severe('Error retrieving messages: $e', e, stackTrace);
rethrow;
}
}