UploadTask.fromJson constructor

UploadTask.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory UploadTask.fromJson(Map<String, dynamic> json) {
  return UploadTask(
    id: json['id'] as String,
    mediaId: json['mediaId'] as String,
    localPath: json['localPath'] as String,
    storagePath: json['storagePath'] as String,
    type: CloudMediaType.values.firstWhere(
      (e) => e.string == json['type'],
      orElse: () => CloudMediaType.file,
    ),
    retryCount: json['retryCount'] as int? ?? 0,
    createdAt: DateTime.parse(json['createdAt'] as String),
    lastAttemptAt: json['lastAttemptAt'] != null
        ? DateTime.parse(json['lastAttemptAt'] as String)
        : null,
    taskStatus: UploadTaskStatus.values.firstWhere(
      (e) => e.name == json['taskStatus'],
      orElse: () => UploadTaskStatus.pending,
    ),
  );
}