parseStatus static method
Implementation
static StatusException parseStatus(List<int> payload) {
try {
final root = jsonDecode(utf8.decode(payload));
if (root is Map && root['code'] is num) {
final status = StatusException(
(root['code'] as num).toInt(), root['message']?.toString() ?? '');
final metadata = root['metadata'];
if (metadata is Map) {
status.trailers = {
for (final e in metadata.entries)
e.key.toString(): e.value.toString(),
};
}
return status;
}
} catch (_) {
// fall through to malformed
}
return StatusException(Wire.codeUnknown, 'malformed trailers');
}