deleteById method
Implementation
Future<Result> deleteById(final IDs ids) async {
Logger.d('$tableName: Attempting to delete - ${ids.toString()}');
final localDb = await localRepo();
try {
Logger.d('$tableName: Attempting to locally delete - ${ids.toString()}');
if (includeLocalTransactions) {
await localDb!.delete(ids);
}
} catch (e, st) {
// TODO put in re-sync queue
Logger.error(st, e.toString());
}
try {
if (includeRemoteTransactions) {
Logger.d(
'$tableName: Attempting to remotely delete - ${ids.toString()}');
await remoteRepo!.delete(ids);
Logger.d('$tableName: Successfully deleted remote - ${ids.toString()}');
}
return Result.success();
} catch (e, st) {
await _saveOutOfSync(
action: SyncAction.delete,
ids: ids,
);
return _getErrorLog(msg: e.toString(), stacktrace: st);
} finally {
// await localDb?.close();
}
}