withTransaction<TResult> method
Implementation
Future<TResult> withTransaction<TResult>(
Future<TResult> Function(Transaction transaction) work) async {
final transaction = await startTransaction();
try {
final result = await work(transaction);
await transaction.commit();
return result;
} catch (ex) {
await transaction.abort(errorMessage: ex.toString());
rethrow;
} finally {
await transaction.dispose();
}
}