send method
Send a binary message to the platform plugins on the given channel.
Returns a Future which completes to the received response, undecoded, in binary form.
Implementation
@override
Future<ByteData?>? send(String channel, ByteData? message) {
final Future<ByteData?>? resultFuture;
final MessageHandler? handler = _outboundHandlers[channel];
if (handler != null) {
resultFuture = handler(message);
} else {
resultFuture =
mockBinding._superDefaultBinaryMessenger.send(channel, message);
}
if (resultFuture != null) {
_pendingMessages.add(resultFuture);
resultFuture.catchError((Object error) {
/* errors are the responsibility of the caller */
}).whenComplete(() => _pendingMessages.remove(resultFuture));
}
return resultFuture;
}