transaction<R> method

  1. @override
FutureOr<R> transaction<R>(
  1. FutureOr<R> callback(
    1. SessionExecutor
    )
)
override

Implementation

@override
FutureOr<R> transaction<R>(FutureOr<R> Function(SessionExecutor) callback) async {
  lite.execute("BEGIN");
  try {
    final r = await callback(this);
    lite.execute("COMMIT");
    return r;
  } catch (e) {
    lite.execute("ROLLBACK");
    rethrow;
  }
}