restoreWalletFromKeysSync function

void restoreWalletFromKeysSync({
  1. required String path,
  2. required String password,
  3. required String language,
  4. required String address,
  5. required String viewKey,
  6. required String spendKey,
  7. int nettype = 0,
  8. int restoreHeight = 0,
})

Implementation

void restoreWalletFromKeysSync({
  required String path,
  required String password,
  required String language,
  required String address,
  required String viewKey,
  required String spendKey,
  int nettype = 0,
  int restoreHeight = 0,
}) {
  final pathPointer = path.toNativeUtf8().cast<Char>();
  final passwordPointer = password.toNativeUtf8().cast<Char>();
  final languagePointer = language.toNativeUtf8().cast<Char>();
  final addressPointer = address.toNativeUtf8().cast<Char>();
  final viewKeyPointer = viewKey.toNativeUtf8().cast<Char>();
  final spendKeyPointer = spendKey.toNativeUtf8().cast<Char>();
  final errorBoxPointer = monero_flutter.buildErrorBoxPointer();

  monero_flutter.bindings.restore_wallet_from_keys(
    pathPointer,
    passwordPointer,
    languagePointer,
    addressPointer,
    viewKeyPointer,
    spendKeyPointer,
    nettype,
    restoreHeight,
    errorBoxPointer,
  );
  final errorInfo = monero_flutter.extractErrorInfo(errorBoxPointer);

  calloc.free(pathPointer);
  calloc.free(passwordPointer);
  calloc.free(languagePointer);
  calloc.free(addressPointer);
  calloc.free(viewKeyPointer);
  calloc.free(spendKeyPointer);

  if (0 != errorInfo.code) {
    throw WalletRestoreFromKeysException(message: errorInfo.getErrorMessage());
  }
}