analyze method

  1. @override
Future<List<RequestResult>> analyze({
  1. required List<Analysis> analysis,
  2. String? folderId,
  3. List<Media> uploadMedia = const [],
  4. Map<String, String> parameters = const {},
  5. String? containerId,
})
override

Implementation

@override
Future<List<RequestResult>> analyze({
  required List<Analysis> analysis,
  String? folderId,
  List<Media> uploadMedia = const [],
  Map<String, String> parameters = const {},
  String? containerId,
}) async {
  final args = {
    'analysis': analysis.map((e) => e.toJson()).toList(),
    'uploadMedia': uploadMedia.map((e) => e.toJson()).toList(),
    'params': parameters,
    if (folderId != null) 'folderId': folderId,
    if (containerId != null) 'containerId': containerId,
  };

  final dynamic raw = await methodChannel.invokeMethod('analyze', args);

  if (raw is List<dynamic>) {
    return raw
        .map((e) => RequestResult.fromJson(e as Map<dynamic, dynamic>))
        .toList(growable: false);
  } else {
    return [];
  }
}