deserialize method

  1. @override
void deserialize(
  1. Map<String, dynamic>? json
)
override

Implementation

@override
void deserialize(Map<String, dynamic>? json) {
  if (json == null) {
    throw ApiException(400, 'Failed to deserialize Section data model.');
  }

  super.deserialize(json);
  if (json.containsKey('Link')) {
    link = ModelBase.createInstance<WordsApiLink>(
        json['Link'] as Map<String, dynamic>);
  } else {
    link = null;
  }

  if (json.containsKey('ChildNodes')) {
    // Array processing
    childNodes = <NodeLink>[];
    for (final _element in json['ChildNodes']) {
      childNodes!.add(ModelBase.createInstance<NodeLink>(
          _element as Map<String, dynamic>));
    }
  } else {
    childNodes = null;
  }

  if (json.containsKey('Paragraphs')) {
    paragraphs = ModelBase.createInstance<LinkElement>(
        json['Paragraphs'] as Map<String, dynamic>);
  } else {
    paragraphs = null;
  }

  if (json.containsKey('PageSetup')) {
    pageSetup = ModelBase.createInstance<LinkElement>(
        json['PageSetup'] as Map<String, dynamic>);
  } else {
    pageSetup = null;
  }

  if (json.containsKey('HeaderFooters')) {
    headerFooters = ModelBase.createInstance<LinkElement>(
        json['HeaderFooters'] as Map<String, dynamic>);
  } else {
    headerFooters = null;
  }

  if (json.containsKey('Tables')) {
    tables = ModelBase.createInstance<LinkElement>(
        json['Tables'] as Map<String, dynamic>);
  } else {
    tables = null;
  }
}