beginTransaction method
Implementation
@override
Future<ArangoDbRepositoryTransaction> beginTransaction(
RepositoryTransactionOptions options,
) async {
final readCollections =
_repositoryCollectionNames(options.readRepositories);
final writeCollections =
_repositoryCollectionNames(options.writeRepositories);
final exclusiveCollections =
_repositoryCollectionNames(options.exclusiveRepositories);
final trxOptions = TransactionOptions(
readCollections: readCollections,
writeCollections: writeCollections,
exclusiveCollections: exclusiveCollections,
waitForSync: true,
);
try {
final transaction = await db.beginTransaction(trxOptions);
final repoTrx = ArangoDbRepositoryTransaction(transaction);
return repoTrx;
} on DbError catch (error) {
throw error.toDbException();
}
}