synchronizeModifications method

Future<Status> synchronizeModifications()

Synchronize modification for the visitor

Implementation

Future<Status> synchronizeModifications() async {
  print(" ############## synchronize Modifications ##################### ");
  Status state = Status.NOT_INITIALIZED;
  try {
    var camp = await decisionManager.getCampaigns(
        Flagship.sharedInstance().envId ?? "", visitorId, _context);

    print(
        "################## The new modification are ${this.modifications} ############################");
    // Clear the previous modifications
    this.modifications.clear();
    // Update panic value
    this.decisionManager.updatePanicMode(camp.panic);
    if (camp.panic) {
      state = Status.PANIC_ON;
    } else {
      var modif = decisionManager.getModifications(camp.campaigns);
      this.modifications.addAll(modif);
      state = Status.READY;
    }
  } catch (error) {
    print(
        "################## ${error.toString()} ############################");
  }

  /// Return the state
  return state;
}