send method

  1. @override
Future<RpcResponse> send(
  1. String method,
  2. List params
)
override

Send arbitrary message to RPC node

Implementation

@override
Future<RpcResponse> send(String method, List<dynamic> params) async {
  if (socket == null) {
    throw Exception('WebsocketChannel is closed');
  }
  await isReady();

  final id = _sequence++;
  final completer = Completer<RpcResponse>();
  final message = jsonEncode({
    'id': id,
    'jsonrpc': '2.0',
    'method': method,
    'params': params,
  });

  queries[id] = PendingQuery(message: message, completer: completer);
  socket!.send(message);

  return completer.future;
}