AudioRouteResult.fromMap constructor

AudioRouteResult.fromMap(
  1. Map map
)

Converts a platform map into an AudioRouteResult.

Implementation

factory AudioRouteResult.fromMap(Map<dynamic, dynamic> map) {
  final statusName = (map['status'] ?? '').toString();
  final status = AudioRouteStatus.values.firstWhere(
    (value) => value.name == statusName,
    orElse: () => map['success'] == true
        ? AudioRouteStatus.success
        : AudioRouteStatus.error,
  );

  final requestedMap = map['requestedDevice'];
  final actualMap = map['actualDevice'];

  return AudioRouteResult(
    success: map['success'] == true,
    status: status,
    requestedDevice:
        requestedMap is Map ? AudioOutputDevice.fromMap(requestedMap) : null,
    actualDevice:
        actualMap is Map ? AudioOutputDevice.fromMap(actualMap) : null,
    message: map['message']?.toString(),
    errorCode: map['errorCode']?.toString(),
  );
}