fromJSON static method

State fromJSON(
  1. String json
)

Deserializes a state from a JSON string.

Implementation

static State fromJSON(String json) {
  // Any errors thrown here are expected and should be handled
  // as data corruption.
  var map = jsonDecode(json) as Map<String, dynamic>;
  var state = State(StateHead(Uri.parse(map[originalURLKey] as String),
      Uri.parse(map[urlKey] as String), map[sizeKey] as int));
  state.transferred = map[transferredKey] as int;
  state.parallel = (map[parallelKey] ?? false) as bool;
  // ignore: implicit_dynamic_map_literal
  var connsMap = map[connKey] as Map<String, dynamic>?;
  if (connsMap != null) {
    for (var connDict in connsMap.values) {
      var connState = ConnState.fromJson(connDict as Map<String, dynamic>);
      state.conns[connState.id] = connState;
    }
  }
  return state;
}