fromJson static method

IosRunnerSession? fromJson(
  1. Object? raw
)

Implementation

static IosRunnerSession? fromJson(Object? raw) {
  if (raw is! Map) return null;
  final udid = raw['udid'];
  final port = raw['port'];
  final pid = raw['xcodebuildPid'];
  final xctr = raw['xctestrunPath'];
  final log = raw['logPath'];
  if (udid is! String ||
      port is! int ||
      pid is! int ||
      xctr is! String ||
      log is! String) {
    return null;
  }
  final lastSuccessMs = raw['lastSuccessfulRunnerResponseAtMs'];
  return IosRunnerSession(
    udid: udid,
    port: port,
    xcodebuildPid: pid,
    xctestrunPath: xctr,
    logPath: log,
    kind: IosRunnerKind.parse(raw['kind'] as String?),
    tunnelIp: raw['tunnelIp'] as String?,
    lastSuccessAt: lastSuccessMs is int
        ? DateTime.fromMillisecondsSinceEpoch(lastSuccessMs)
        : null,
  );
}