setupClientSecretProvider method

  1. @override
void setupClientSecretProvider(
  1. Future<String?> clientSecretProvider(
    1. String customerId
    )
)
override

Implementation

@override
void setupClientSecretProvider(
    Future<String?> Function(String customerId) clientSecretProvider) {
  secretProviderChannel.setMethodCallHandler((call) async {
    if (call.method == 'getClientSecret') {
      final Map<String, dynamic> args =
          Map<String, dynamic>.from(call.arguments);
      final String? customerId = args['ansaCustomerId'];
      if (customerId != null) {
        return await clientSecretProvider(customerId);
      } else {
        throw PlatformException(
          code: 'INVALID_ARGUMENTS',
          message: 'Missing or invalid customerId',
        );
      }
    } else {
      throw PlatformException(
        code: 'NOT_IMPLEMENTED',
        message: 'Method ${call.method} is not implemented.',
      );
    }
  });
}