ldc-boutique-cnc-sable/infra/Adapters/Services/LaravelTransactionManager.php
2026-10-27 09:58:12 +01:00

23 lines
456 B
PHP

<?php
declare(strict_types=1);
namespace Infrastructure\Adapters\Services;
use Domain\Ports\Services\TransactionManager;
use Illuminate\Support\Facades\DB;
class LaravelTransactionManager implements TransactionManager
{
/**
* @template T
*
* @param callable(): T $callback
* @return T
*/
#[\Override]
public function execute(callable $callback)
{
return DB::transaction(fn () => $callback());
}
}