getStatistics method
Returns statistics about the queue.
Implementation
Map<String, dynamic> getStatistics() {
final controlMessages = _queue.where((m) => m.isControl).length;
final jsonMessages = _queue.where((m) => m.isJson).length;
final binaryMessages = _queue.where((m) => m.isBinary).length;
final textMessages = _queue.where((m) => m.isText).length;
return {
'size': size,
'maxSize': maxSize,
'isEmpty': isEmpty,
'isFull': isFull,
'retryableCount': retryableCount,
'ackRequiredCount': ackRequiredCount,
'controlMessages': controlMessages,
'jsonMessages': jsonMessages,
'binaryMessages': binaryMessages,
'textMessages': textMessages,
'enablePriority': enablePriority,
'enableDeduplication': enableDeduplication,
'utilization': maxSize > 0
? '${(size / maxSize * 100).toStringAsFixed(2)}%'
: '0%',
};
}