unpair method
Unpair current device with another device/employee
Implementation
@override
Future<bool> unpair(
String qrUserId, String qrDeviceId, String typeOfPairing) async {
log("START UNPAIR METHOD");
/// DELETE MUTUAL MERGE
bool ok = await deleteMutualMerge(_username, qrUserId, typeOfPairing);
if (!ok) {
await deleteMutualMerge(qrUserId, _username, typeOfPairing);
}
if (typeOfPairing.contains('device')) {
bool exist = await nodeExists(
'$_enterpriseUsers:$_username:$_devicesPairing:$qrDeviceId');
if (exist) {
await _storageController.delete(
'$_enterpriseUsers:$_username:$_devicesPairing:$qrDeviceId');
log("Local Enterprise After => ${await _storageController.dump('$_enterpriseUsers:$_username:$_devicesPairing')}");
log("[GEIGER CLOUD] UNPAIR FINISHED OK");
return true;
} else {
log("UNPAIR qrDeviceId NOT FOUND ON LOCAL STORAGE");
return false;
}
} else {
bool exist = await nodeExists(
'$_enterpriseUsers:$_username:$_employeesPairing:$qrUserId');
if (exist) {
await _storageController.delete(
'$_enterpriseUsers:$_username:$_employeesPairing:$qrUserId');
log("Local Enterprise After => ${await _storageController.dump('$_enterpriseUsers:$_username:$_employeesPairing')}");
log("[GEIGER CLOUD] UNPAIR FINISHED OK");
return true;
} else {
log("UNPAIR qrUserId NOT FOUND ON LOCAL STORAGE");
return false;
}
}
}