Temperature.fromJson constructor

Temperature.fromJson(
  1. Map<String, dynamic> dataMap
)

Creates a Temperature object from the JSON response to a GET request.

Implementation

factory Temperature.fromJson(Map<String, dynamic> dataMap) {
  // Handle entire response given with no filter.
  Map<String, dynamic> data = MiscTools.extractData(dataMap);

  Map<String, dynamic> innerTemperatureMap =
      Map<String, dynamic>.from(data[ApiFields.temperature]);

  return Temperature(
    type: ResourceType.fromString(data[ApiFields.type] ?? ""),
    id: data[ApiFields.id] ?? "",
    idV1: data[ApiFields.idV1] ?? "",
    owner: Relative.fromJson(
        Map<String, dynamic>.from(data[ApiFields.owner] ?? {})),
    isEnabled: data[ApiFields.isEnabled] ?? false,
    temperatureCelsius:
        ((innerTemperatureMap[ApiFields.temperature] ?? 0.0) as num)
            .toDouble(),
    isValidTemperature:
        innerTemperatureMap[ApiFields.temperatureValid] ?? false,
  );
}