UDownloadTask.fromJson constructor
UDownloadTask.fromJson(
- Map<String, dynamic> json
)
Implementation
factory UDownloadTask.fromJson(Map<String, dynamic> json) {
final UDownloadTask task = UDownloadTask(
id: json["id"] as String,
request: UDownloadRequest.fromJson(json["request"] as Map<String, dynamic>),
createdAt: DateTime.fromMillisecondsSinceEpoch(json["created"] as int),
status: UDownloadStatus.values.firstWhere((UDownloadStatus s) => s.name == json["status"], orElse: () => UDownloadStatus.paused),
)
..received = json["received"] as int? ?? 0
..total = json["total"] as int? ?? -1
..fileName = json["fileName"] as String?
..mimeType = json["mimeType"] as String?
..result = json["result"] as String?
..partPath = json["partPath"] as String?
..etag = json["etag"] as String?
..lastModified = json["lastModified"] as String?
..acceptsRanges = json["ranges"] == true
..system = json["system"] == true
..mirrorIndex = json["mirror"] as int? ?? 0
..completedAt = json["completed"] == null ? null : DateTime.fromMillisecondsSinceEpoch(json["completed"] as int)
..error = json["error"] == null ? null : UDownloadError.fromJson(json["error"] as Map<String, dynamic>);
task.segments.addAll(((json["segments"] as List<dynamic>?) ?? <dynamic>[]).map((dynamic s) => UDownloadSegment.fromJson(s as List<dynamic>)));
return task;
}