deleteCascadeGeneric<O extends Object> static method
Future<Iterable>
deleteCascadeGeneric<O extends Object>(
- O o, {
- Transaction? transaction,
- EntityHandler<
O> ? entityHandler, - EntityRepository<
O> ? entityRepository, - EntityRepositoryProvider? repositoryProvider,
Implementation
static Future<Iterable> deleteCascadeGeneric<O extends Object>(
O o, {
Transaction? transaction,
EntityHandler<O>? entityHandler,
EntityRepository<O>? entityRepository,
EntityRepositoryProvider? repositoryProvider,
}) async {
entityRepository ??= _resolveRepositoryProvider<O>(
entityHandler,
entityRepository,
repositoryProvider,
obj: o,
);
entityHandler ??= _resolveEntityHandler<O>(
entityHandler,
entityRepository,
repositoryProvider,
obj: o,
);
if (entityHandler == null) {
throw ArgumentError(
"EntityHandler not provided for type: ${o.runtimeTypeNameUnsafe}",
);
}
var deleted = <Object>[];
return Transaction.executeBlock(
(transaction) => _deleteCascadeGenericImpl(
o,
transaction,
entityHandler,
entityRepository,
repositoryProvider,
deleted,
).resolveWithValue(deleted),
transaction: transaction,
);
}