import 'package:oc_front/models/abstract.dart'; import 'package:oc_front/models/resources/compute.dart'; import 'package:oc_front/models/resources/data.dart'; import 'package:oc_front/models/resources/processing.dart'; import 'package:oc_front/models/resources/storage.dart'; class Search extends SerializerDeserializer { Search({ this.computing = const [], this.compute = const [], this.data = const [], this.storage = const [], }); List computing; List compute; List data; List storage; @override deserialize(dynamic json) { json = json as Map; return Search( computing: json.containsKey("processing") ? fromListJson(json["processing"], ProcessingItem()) : [], compute: json.containsKey("compute") ? fromListJson(json["compute"], ComputeItem()) : [], data: json.containsKey("data") ? fromListJson(json["data"], DataItem()) : [], storage: json.containsKey("storage") ? fromListJson(json["storage"], StorageItem()) : [], ); } @override Map serialize() => { "processing": toListJson(computing), "compute": toListJson(compute), "data": toListJson(data), "storage": toListJson(storage), }; }