| 2343 | } |
| 2344 | |
| 2345 | std::string getSIWEBackupMessage() { |
| 2346 | std::promise<std::string> backupSIWEMessagePromise; |
| 2347 | std::future<std::string> backupSIWEMessageFuture = |
| 2348 | backupSIWEMessagePromise.get_future(); |
| 2349 | GlobalDBSingleton::instance.scheduleOrRunCancellable( |
| 2350 | [&backupSIWEMessagePromise]() { |
| 2351 | try { |
| 2352 | std::string backupSecrets = |
| 2353 | DatabaseManager::getQueryExecutor().getMetadata( |
| 2354 | "siweBackupSecrets"); |
| 2355 | if (!backupSecrets.size()) { |
| 2356 | backupSIWEMessagePromise.set_value(""); |
| 2357 | } else { |
| 2358 | folly::dynamic backupSecretsJSON = folly::parseJson(backupSecrets); |
| 2359 | std::string message = backupSecretsJSON["message"].asString(); |
| 2360 | backupSIWEMessagePromise.set_value(message); |
| 2361 | } |
| 2362 | } catch (std::system_error &e) { |
| 2363 | backupSIWEMessagePromise.set_exception(std::make_exception_ptr(e)); |
| 2364 | } |
| 2365 | }); |
| 2366 | return backupSIWEMessageFuture.get(); |
| 2367 | } |
| 2368 | |
| 2369 | jsi::Value CommCoreModule::createFullBackup( |
| 2370 | jsi::Runtime &rt, |
no test coverage detected