getTreatments method

  1. @override
Future<Map<String, String>> getTreatments({
  1. required String matchingKey,
  2. required String? bucketingKey,
  3. required List<String> splitNames,
  4. Map<String, dynamic> attributes = const {},
  5. EvaluationOptions evaluationOptions = const EvaluationOptions.empty(),
})

Implementation

@override
Future<Map<String, String>> getTreatments(
    {required String matchingKey,
    required String? bucketingKey,
    required List<String> splitNames,
    Map<String, dynamic> attributes = const {},
    EvaluationOptions evaluationOptions =
        const EvaluationOptions.empty()}) async {
  final params = _withEvalOptions(
    matchingKey,
    bucketingKey,
    base: {
      'splitName': splitNames,
      'attributes': attributes,
    },
    evaluationOptions: evaluationOptions,
  );
  Map? treatments =
      await methodChannel.invokeMapMethod('getTreatments', params);

  return treatments
          ?.map((key, value) => MapEntry<String, String>(key, value)) ??
      {for (var item in splitNames) item: _controlTreatment};
}