openTransaction method
Implementation
@override
Future<DBSQLiteConnectionWrapper> openTransaction(Transaction transaction) {
var contextCompleter = Completer<DBSQLiteConnectionWrapper>();
var result = executeWithPool(
(connection) {
return connection.openTransaction((transactionWrap) {
contextCompleter.complete(transactionWrap);
return _runTransaction(transaction, connection);
});
},
validator: (c) => !transaction.isAborted,
onError: (e, s) => transaction.notifyExecutionError(
e,
s,
errorResolver: resolveError,
debugInfo: () => transaction.toString(withExecutedOperations: false),
),
);
transaction.transactionResult = result;
return contextCompleter.future;
}