diff options
| author | polo <ordipolo@gmx.fr> | 2024-08-13 23:45:21 +0200 |
|---|---|---|
| committer | polo <ordipolo@gmx.fr> | 2024-08-13 23:45:21 +0200 |
| commit | bf6655a534a6775d30cafa67bd801276bda1d98d (patch) | |
| tree | c6381e3f6c81c33eab72508f410b165ba05f7e9c /vendor/doctrine/dbal/src/Logging | |
| parent | 94d67a4b51f8e62e7d518cce26a526ae1ec48278 (diff) | |
| download | AppliGestionPHP-bf6655a534a6775d30cafa67bd801276bda1d98d.tar.gz AppliGestionPHP-bf6655a534a6775d30cafa67bd801276bda1d98d.tar.bz2 AppliGestionPHP-bf6655a534a6775d30cafa67bd801276bda1d98d.zip | |
VERSION 0.2 doctrine ORM et entités
Diffstat (limited to 'vendor/doctrine/dbal/src/Logging')
| -rw-r--r-- | vendor/doctrine/dbal/src/Logging/Connection.php | 69 | ||||
| -rw-r--r-- | vendor/doctrine/dbal/src/Logging/Driver.php | 50 | ||||
| -rw-r--r-- | vendor/doctrine/dbal/src/Logging/Middleware.php | 21 | ||||
| -rw-r--r-- | vendor/doctrine/dbal/src/Logging/Statement.php | 48 |
4 files changed, 188 insertions, 0 deletions
diff --git a/vendor/doctrine/dbal/src/Logging/Connection.php b/vendor/doctrine/dbal/src/Logging/Connection.php new file mode 100644 index 0000000..9c220de --- /dev/null +++ b/vendor/doctrine/dbal/src/Logging/Connection.php | |||
| @@ -0,0 +1,69 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Logging; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\Connection as ConnectionInterface; | ||
| 8 | use Doctrine\DBAL\Driver\Middleware\AbstractConnectionMiddleware; | ||
| 9 | use Doctrine\DBAL\Driver\Result; | ||
| 10 | use Doctrine\DBAL\Driver\Statement as DriverStatement; | ||
| 11 | use Psr\Log\LoggerInterface; | ||
| 12 | |||
| 13 | final class Connection extends AbstractConnectionMiddleware | ||
| 14 | { | ||
| 15 | /** @internal This connection can be only instantiated by its driver. */ | ||
| 16 | public function __construct(ConnectionInterface $connection, private readonly LoggerInterface $logger) | ||
| 17 | { | ||
| 18 | parent::__construct($connection); | ||
| 19 | } | ||
| 20 | |||
| 21 | public function __destruct() | ||
| 22 | { | ||
| 23 | $this->logger->info('Disconnecting'); | ||
| 24 | } | ||
| 25 | |||
| 26 | public function prepare(string $sql): DriverStatement | ||
| 27 | { | ||
| 28 | return new Statement( | ||
| 29 | parent::prepare($sql), | ||
| 30 | $this->logger, | ||
| 31 | $sql, | ||
| 32 | ); | ||
| 33 | } | ||
| 34 | |||
| 35 | public function query(string $sql): Result | ||
| 36 | { | ||
| 37 | $this->logger->debug('Executing query: {sql}', ['sql' => $sql]); | ||
| 38 | |||
| 39 | return parent::query($sql); | ||
| 40 | } | ||
| 41 | |||
| 42 | public function exec(string $sql): int|string | ||
| 43 | { | ||
| 44 | $this->logger->debug('Executing statement: {sql}', ['sql' => $sql]); | ||
| 45 | |||
| 46 | return parent::exec($sql); | ||
| 47 | } | ||
| 48 | |||
| 49 | public function beginTransaction(): void | ||
| 50 | { | ||
| 51 | $this->logger->debug('Beginning transaction'); | ||
| 52 | |||
| 53 | parent::beginTransaction(); | ||
| 54 | } | ||
| 55 | |||
| 56 | public function commit(): void | ||
| 57 | { | ||
| 58 | $this->logger->debug('Committing transaction'); | ||
| 59 | |||
| 60 | parent::commit(); | ||
| 61 | } | ||
| 62 | |||
| 63 | public function rollBack(): void | ||
| 64 | { | ||
| 65 | $this->logger->debug('Rolling back transaction'); | ||
| 66 | |||
| 67 | parent::rollBack(); | ||
| 68 | } | ||
| 69 | } | ||
diff --git a/vendor/doctrine/dbal/src/Logging/Driver.php b/vendor/doctrine/dbal/src/Logging/Driver.php new file mode 100644 index 0000000..35acd39 --- /dev/null +++ b/vendor/doctrine/dbal/src/Logging/Driver.php | |||
| @@ -0,0 +1,50 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Logging; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver as DriverInterface; | ||
| 8 | use Doctrine\DBAL\Driver\Middleware\AbstractDriverMiddleware; | ||
| 9 | use Psr\Log\LoggerInterface; | ||
| 10 | use SensitiveParameter; | ||
| 11 | |||
| 12 | final class Driver extends AbstractDriverMiddleware | ||
| 13 | { | ||
| 14 | /** @internal This driver can be only instantiated by its middleware. */ | ||
| 15 | public function __construct(DriverInterface $driver, private readonly LoggerInterface $logger) | ||
| 16 | { | ||
| 17 | parent::__construct($driver); | ||
| 18 | } | ||
| 19 | |||
| 20 | /** | ||
| 21 | * {@inheritDoc} | ||
| 22 | */ | ||
| 23 | public function connect( | ||
| 24 | #[SensitiveParameter] | ||
| 25 | array $params, | ||
| 26 | ): Connection { | ||
| 27 | $this->logger->info('Connecting with parameters {params}', ['params' => $this->maskPassword($params)]); | ||
| 28 | |||
| 29 | return new Connection( | ||
| 30 | parent::connect($params), | ||
| 31 | $this->logger, | ||
| 32 | ); | ||
| 33 | } | ||
| 34 | |||
| 35 | /** | ||
| 36 | * @param array<string,mixed> $params Connection parameters | ||
| 37 | * | ||
| 38 | * @return array<string,mixed> | ||
| 39 | */ | ||
| 40 | private function maskPassword( | ||
| 41 | #[SensitiveParameter] | ||
| 42 | array $params, | ||
| 43 | ): array { | ||
| 44 | if (isset($params['password'])) { | ||
| 45 | $params['password'] = '<redacted>'; | ||
| 46 | } | ||
| 47 | |||
| 48 | return $params; | ||
| 49 | } | ||
| 50 | } | ||
diff --git a/vendor/doctrine/dbal/src/Logging/Middleware.php b/vendor/doctrine/dbal/src/Logging/Middleware.php new file mode 100644 index 0000000..989e0ca --- /dev/null +++ b/vendor/doctrine/dbal/src/Logging/Middleware.php | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Logging; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver as DriverInterface; | ||
| 8 | use Doctrine\DBAL\Driver\Middleware as MiddlewareInterface; | ||
| 9 | use Psr\Log\LoggerInterface; | ||
| 10 | |||
| 11 | final class Middleware implements MiddlewareInterface | ||
| 12 | { | ||
| 13 | public function __construct(private readonly LoggerInterface $logger) | ||
| 14 | { | ||
| 15 | } | ||
| 16 | |||
| 17 | public function wrap(DriverInterface $driver): DriverInterface | ||
| 18 | { | ||
| 19 | return new Driver($driver, $this->logger); | ||
| 20 | } | ||
| 21 | } | ||
diff --git a/vendor/doctrine/dbal/src/Logging/Statement.php b/vendor/doctrine/dbal/src/Logging/Statement.php new file mode 100644 index 0000000..ed1ca7f --- /dev/null +++ b/vendor/doctrine/dbal/src/Logging/Statement.php | |||
| @@ -0,0 +1,48 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Logging; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\Middleware\AbstractStatementMiddleware; | ||
| 8 | use Doctrine\DBAL\Driver\Result as ResultInterface; | ||
| 9 | use Doctrine\DBAL\Driver\Statement as StatementInterface; | ||
| 10 | use Doctrine\DBAL\ParameterType; | ||
| 11 | use Psr\Log\LoggerInterface; | ||
| 12 | |||
| 13 | final class Statement extends AbstractStatementMiddleware | ||
| 14 | { | ||
| 15 | /** @var array<int,mixed>|array<string,mixed> */ | ||
| 16 | private array $params = []; | ||
| 17 | |||
| 18 | /** @var array<int,ParameterType>|array<string,ParameterType> */ | ||
| 19 | private array $types = []; | ||
| 20 | |||
| 21 | /** @internal This statement can be only instantiated by its connection. */ | ||
| 22 | public function __construct( | ||
| 23 | StatementInterface $statement, | ||
| 24 | private readonly LoggerInterface $logger, | ||
| 25 | private readonly string $sql, | ||
| 26 | ) { | ||
| 27 | parent::__construct($statement); | ||
| 28 | } | ||
| 29 | |||
| 30 | public function bindValue(int|string $param, mixed $value, ParameterType $type): void | ||
| 31 | { | ||
| 32 | $this->params[$param] = $value; | ||
| 33 | $this->types[$param] = $type; | ||
| 34 | |||
| 35 | parent::bindValue($param, $value, $type); | ||
| 36 | } | ||
| 37 | |||
| 38 | public function execute(): ResultInterface | ||
| 39 | { | ||
| 40 | $this->logger->debug('Executing statement: {sql} (parameters: {params}, types: {types})', [ | ||
| 41 | 'sql' => $this->sql, | ||
| 42 | 'params' => $this->params, | ||
| 43 | 'types' => $this->types, | ||
| 44 | ]); | ||
| 45 | |||
| 46 | return parent::execute(); | ||
| 47 | } | ||
| 48 | } | ||
