nativeMethodCallHandler method

  1. @visibleForTesting
Future nativeMethodCallHandler(
  1. MethodCall methodCall
)

Implementation

@visibleForTesting
Future<dynamic> nativeMethodCallHandler(MethodCall methodCall) async {
  log(
    'Received WhiteLabelModule message: ${methodCall.method} ${methodCall.arguments} ${methodCall.arguments.runtimeType}',
  );

  final nativeMessageHandlers = _nativeMessageHandlers[methodCall.method];
  if (nativeMessageHandlers != null) {
    // Cast methodCall.arguments to Map<String, dynamic> if it's a Map
    final Map<String, dynamic> arguments =
        methodCall.arguments is Map ? Map<String, dynamic>.from(methodCall.arguments as Map) : <String, dynamic>{};

    for (final handler in nativeMessageHandlers) {
      final response = await handler(arguments);
      if (response != null) {
        return response;
      }
    }
  }
}