import 'dart:convert'; import 'package:mhunt_launcher/Backend/DebugHelper.dart'; class FileHashEntry{ String file; String hash; int bytes; FileHashEntry(this.file, this.hash, this.bytes); static fromJson(json) { FileHashEntry(json['file'], json['hash'], json['bytes']); } Map toJson()=> { 'file':file, 'hash':hash, 'bytes':bytes }; static String listToJson(List list){ List> localFilesJsonList = []; for(int i =0; i < list.length; i++){ localFilesJsonList.add(list[i].toJson()); } return jsonEncode(localFilesJsonList); } static List listFromJson(String json){ List list = jsonDecode(json); List output = []; for(int i= 0; i < list.length; i++){ if(list[i]==null){continue;} FileHashEntry entry = FileHashEntry(list[i]['file'], list[i]['hash'], list[i]['bytes']); output.add(entry); } return output; } static int getTotalSizeInBytes(List list){ int out = 0; list.forEach((file){ out += file.bytes; }); return out; } static double getTotalSizeInMbytes(List list){ int bytes = getTotalSizeInBytes(list); return bytes / 1024 / 1024; } }