setSettingItem method

Future<void> setSettingItem(
  1. String name,
  2. String value, {
  3. NsgDataStorageType? storageType,
})

Сохранить настройку по имени. Если не существует, создаст новую запись.

Implementation

Future<void> setSettingItem(String name, String value, {NsgDataStorageType? storageType}) async {
  if (getSettingItem(name) == null) {
    var item = await doCreateNewItem() as NsgUserSettings;
    item.name = name;
    item.settings = value;
    (item as T).storageType = storageType ?? controllerMode.storageType;
    userSettings[item.name] = item as T;
    await postUserSettings(userSettings[item.name]!);
  } else {
    var item = getSettingItem(name) as NsgUserSettings;
    item.settings = value;
    (item as T).storageType = storageType ?? controllerMode.storageType;
    userSettings[item.name] = item as T;
    await postUserSettings(userSettings[item.name]!);
  }
}