sendError method

Future<void> sendError(
  1. int id,
  2. String topic,
  3. String method,
  4. JsonRpcError error,
)
override

Implementation

Future<void> sendError(
  int id,
  String topic,
  String method,
  JsonRpcError error,
) async {
  final Map<String, dynamic> payload = PairingUtils.formatJsonRpcError(
    id,
    error,
  );
  final String message = await core.crypto.encode(topic, payload);
  final RpcOptions opts = RPCConstants.PAIRING_RPC_OPTS.containsKey(method)
      ? RPCConstants.PAIRING_RPC_OPTS[method]['res']
      : RPCConstants.PAIRING_RPC_OPTS[RPCConstants.UNREGISTERED_METHOD]
          ['res'];
  await core.relayClient.publish(topic, message, opts.ttl);
  await core.history.resolve(payload);
}