hardwareSpecifications property

Map<HardwareSpecification, String> get hardwareSpecifications

Device hardware specifications attached to recordings.

Returns a map keyed by HardwareSpecification containing string values describing device metadata collected at recording time (for example model, cpu cores, memory).

Needs to be populated by the API user.

Implementation

Map<HardwareSpecification, String> get hardwareSpecifications {
  final OperationResult resultString = objectMethod(
    pointerId,
    'RecorderConfiguration',
    'getHardwareSpecifications',
  );
  final Map<String, dynamic> hardwareSpecificationsAsString =
      jsonDecode(resultString['result']) ?? <String, dynamic>{};

  final Map<HardwareSpecification, String> hardwareSpecifications =
      <HardwareSpecification, String>{};
  for (final HardwareSpecification spec in HardwareSpecification.values) {
    if (!hardwareSpecificationsAsString.containsKey(spec.id.toString())) {
      continue;
    }
    hardwareSpecifications[spec] =
        hardwareSpecificationsAsString[spec.id.toString()] ?? '';
  }
  return hardwareSpecifications;
}
set hardwareSpecifications (Map<HardwareSpecification, String> hardwareSpecifications)

Set device hardware specifications to attach to recordings.

Provide a map keyed by HardwareSpecification containing string values describing the device (for example model, cpu cores, memory). These values are stored alongside logs for diagnostics.

Implementation

set hardwareSpecifications(
  final Map<HardwareSpecification, String> hardwareSpecifications,
) {
  final Map<String, String> hardwareSpecificationsAsString =
      <String, String>{};
  for (final HardwareSpecification spec in hardwareSpecifications.keys) {
    hardwareSpecificationsAsString[spec.id.toString()] =
        hardwareSpecifications[spec] ?? '';
  }
  objectMethod(
    pointerId,
    'RecorderConfiguration',
    'setHardwareSpecifications',
    args: jsonEncode(hardwareSpecificationsAsString),
  );
}