kdfMainStatus method
Implementation
Future<MainStatus> kdfMainStatus() async {
final status = await _kdfOperations.kdfMainStatus();
_log('KDF main status: $status');
// Checking if KDF is running using `version` method covers the case
// where implementations do not run as a singleton. E.g. `kdfMainStatus`
// for `kdfOperationsLocalExecutable` will return `MainStatus.notRunning`
// if that instance does not have a process running even if KDF is
// running in another instance. Consider refactoring the architecture
// to take this into account.
if (status == MainStatus.notRunning) {
final version = await _kdfOperations.version();
if (version != null) {
return MainStatus.rpcIsUp;
}
}
return status;
}