setOnlineAll<ChildData extends WithLangText, ParentData extends WithOffline, DDModel extends DropDownModel<ChildData, ParentData>> method

Future setOnlineAll<ChildData extends WithLangText, ParentData extends WithOffline, DDModel extends DropDownModel<ChildData, ParentData>>(
  1. DDModel caller,
  2. int depth, {
  3. String? name,
  4. String? parentID,
})

Implementation

Future setOnlineAll<
    ChildData extends WithLangText,
    ParentData extends WithOffline,
    DDModel extends DropDownModel<ChildData, ParentData>>(
  DDModel caller,
  int depth, {
  String? name,
  String? parentID,
}) async {
  // base-case: CheckPointDefects have no children
  if (depth == 0) return true;
  depth--;
  var children = await caller.all().last;
  caller.currentData.forceOffline = false;
  if (parentID != null)
    API().local.storeData(caller.currentData, forId: parentID);
  final nextid = caller.currentData.id;
  for (final child in children) {
    String _name = '$name -> ${child.title}';
    debugPrint('__12342 got $depth: $_name');
    if (depth == 0) return; //base-case as to not call generateNextModel
    setOnlineAll(caller.generateNextModel(child), depth,
        name: _name, parentID: nextid);
  }
}