Вход Регистрация
Файл: vendor/doctrine/dbal/src/Logging/Connection.php
Строк: 115
<?php

declare(strict_types=1);

namespace 
DoctrineDBALLogging;

use 
DoctrineDBALDriverConnection as ConnectionInterface;
use 
DoctrineDBALDriverMiddlewareAbstractConnectionMiddleware;
use 
DoctrineDBALDriverResult;
use 
DoctrineDBALDriverStatement as DriverStatement;
use 
PsrLogLoggerInterface;

final class 
Connection extends AbstractConnectionMiddleware
{
    private 
LoggerInterface $logger;

    
/** @internal This connection can be only instantiated by its driver. */
    
public function __construct(ConnectionInterface $connectionLoggerInterface $logger)
    {
        
parent::__construct($connection);

        
$this->logger $logger;
    }

    public function 
__destruct()
    {
        
$this->logger->info('Disconnecting');
    }

    public function 
prepare(string $sql): DriverStatement
    
{
        return new 
Statement(
            
parent::prepare($sql),
            
$this->logger,
            
$sql,
        );
    }

    public function 
query(string $sql): Result
    
{
        
$this->logger->debug('Executing query: {sql}', ['sql' => $sql]);

        return 
parent::query($sql);
    }

    public function 
exec(string $sql): int
    
{
        
$this->logger->debug('Executing statement: {sql}', ['sql' => $sql]);

        return 
parent::exec($sql);
    }

    
/**
     * {@inheritDoc}
     */
    
public function beginTransaction()
    {
        
$this->logger->debug('Beginning transaction');

        return 
parent::beginTransaction();
    }

    
/**
     * {@inheritDoc}
     */
    
public function commit()
    {
        
$this->logger->debug('Committing transaction');

        return 
parent::commit();
    }

    
/**
     * {@inheritDoc}
     */
    
public function rollBack()
    {
        
$this->logger->debug('Rolling back transaction');

        return 
parent::rollBack();
    }
}
Онлайн: 3
Реклама