sendMessage method

Future<void> sendMessage(
  1. WireMessage message
)

Send a message to the peer

Implementation

Future<void> sendMessage(WireMessage message) async {
  if (!isConnected) {
    throw ConnectionException('Not connected to peer');
  }

  try {
    // Determine priority and enqueue
    final priority = MessagePriorityHelper.getPriority(message.command);
    await _outboundQueue.enqueue(message, priority: priority);

    logger.fine('Queued ${message.command} message for sending');
  } catch (e) {
    final error = MessageProcessingException('Failed to queue message', e, message.command);
    _errorController.add(error);
    throw error;
  }
}