invoke method

Future invoke(
  1. String method, {
  2. dynamic params,
  3. Map<String, Function>? callbacks,
})

Implementation

Future<dynamic> invoke(
  String method, {
  dynamic params,
  Map<String, Function>? callbacks,
}) {
  Map<String, dynamic> enrichedParams;

  if (params is Map) {
    enrichedParams = Map<String, dynamic>.from(params);
  } else if (params != null) {
    enrichedParams = {'__data__': params};
  } else {
    enrichedParams = {};
  }

  if (callbacks != null) {
    final invocationId = '${++_invocationCounter}';
    _callbacks[invocationId] = callbacks;
    enrichedParams['__invocationId__'] = invocationId;
  }

  return _invokeChannel.invokeMethod(method, enrichedParams);
}