caisse-bliss/vendor/symfony/doctrine-bridge/Middleware/Debug/Middleware.php

41 lines
1.1 KiB
PHP

<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Bridge\Doctrine\Middleware\Debug;
use Doctrine\DBAL\Driver as DriverInterface;
use Doctrine\DBAL\Driver\Middleware as MiddlewareInterface;
use Symfony\Component\Stopwatch\Stopwatch;
/**
* Middleware to collect debug data.
*
* @author Laurent VOULLEMIER <laurent.voullemier@gmail.com>
*/
final class Middleware implements MiddlewareInterface
{
private $debugDataHolder;
private $stopwatch;
private $connectionName;
public function __construct(DebugDataHolder $debugDataHolder, ?Stopwatch $stopwatch, string $connectionName = 'default')
{
$this->debugDataHolder = $debugDataHolder;
$this->stopwatch = $stopwatch;
$this->connectionName = $connectionName;
}
public function wrap(DriverInterface $driver): DriverInterface
{
return new Driver($driver, $this->debugDataHolder, $this->stopwatch, $this->connectionName);
}
}