multiSet method

  1. @VoltronMethod(kFuncMultiSet)
bool multiSet(
  1. VoltronArray keyValues,
  2. JSPromise promise
)

Implementation

@VoltronMethod(kFuncMultiSet)
bool multiSet(VoltronArray keyValues, final JSPromise promise) {
  if (keyValues.size() <= 0) {
    promise.reject("Invalid keyValues");
    return true;
  }
  var storageAdapter = _storageAdapter;
  if (storageAdapter == null) {
    promise.reject("Database Null");
    return true;
  }
  var handleData = <StorageKeyValue>[];
  StorageKeyValue keyValue;
  VoltronArray? array;
  String? key;
  String? value;
  for (var idx = 0; idx < keyValues.size(); idx++) {
    array = keyValues.get<VoltronArray>(idx);

    if (array == null || array.size() != 2) {
      promise.reject("Invalid Value");
      return true;
    }
    key = array.getString(0);
    if (key == null) {
      promise.reject("Invalid key");
      return true;
    }
    value = array.getString(1);
    if (value == null) {
      promise.reject("Invalid Value");
      return true;
    }
    keyValue = StorageKeyValue(key, value);
    handleData.add(keyValue);
  }
  storageAdapter.multiSet(handleData).then((data) {
    promise.resolve("success");
  }).catchError((e) async {
    promise.reject(e);
  });
  return true;
}