fromJson static method

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

convert from json return List of MemoryInfo

Implementation

static List<MemoryInfo> fromJson(Map<String, dynamic> json) {
  Map<String, dynamic> memory = json['memlayout'] ?? {};
  List<MemoryInfo> memoryList = [];
  for (var i = 0; i < memory.length; i++) {
    MemoryInfo memInfo = MemoryInfo(
      bank: memory['$i']['BankLabel'],
      clockSpeed:
          int.tryParse(memory['$i']['ConfiguredClockSpeed'].toString()) ?? 0,
      formFactor: memory['$i']['FormFactor'],
      manufacturer: memory['$i']['Manufacturer'],
      partNum: memory['$i']['PartNumber'],
      serialNum: memory['$i']['SerialNumber'],
      size: int.tryParse(memory['$i']['Capacity'].toString()) ?? 0,
      type: memory['$i']['MemoryType'].toString().toLowerCase() != 'null' &&
              memory['$i']['MemoryType']
                  .toString()
                  .toLowerCase()
                  .trim()
                  .isNotEmpty
          ? memory['$i']['MemoryType'].toString()
          : memory['$i']['SMBIOSMemoryType'].toString().toLowerCase() !=
                      'null' &&
                  memory['$i']['SMBIOSMemoryType']
                      .toString()
                      .toLowerCase()
                      .trim()
                      .isNotEmpty
              ? memory['$i']['SMBIOSMemoryType'].toString().toLowerCase()
              : '',
      voltageConfigured:
          int.tryParse(memory['$i']['ConfiguredVoltage'].toString()) ?? 0,
      voltageMax: int.tryParse(memory['$i']['MaxVoltage'].toString()) ?? 0,
      voltageMin: int.tryParse(memory['$i']['MinVoltage'].toString()) ?? 0,
    );
    memoryList.add(memInfo);
  }
  return memoryList;
}