Вход Регистрация
Файл: vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractOracleDriver.php
Строк: 203
<?php

namespace DoctrineDBALDriver;

use 
DoctrineDBALConnection;
use 
DoctrineDBALDriver;
use 
DoctrineDBALDriverAbstractOracleDriverEasyConnectString;
use 
DoctrineDBALDriverDriverException as DeprecatedDriverException;
use 
DoctrineDBALExceptionConnectionException;
use 
DoctrineDBALExceptionDriverException;
use 
DoctrineDBALExceptionForeignKeyConstraintViolationException;
use 
DoctrineDBALExceptionInvalidFieldNameException;
use 
DoctrineDBALExceptionNonUniqueFieldNameException;
use 
DoctrineDBALExceptionNotNullConstraintViolationException;
use 
DoctrineDBALExceptionSyntaxErrorException;
use 
DoctrineDBALExceptionTableExistsException;
use 
DoctrineDBALExceptionTableNotFoundException;
use 
DoctrineDBALExceptionUniqueConstraintViolationException;
use 
DoctrineDBALPlatformsOraclePlatform;
use 
DoctrineDBALSchemaOracleSchemaManager;

/**
 * Abstract base implementation of the {@link Driver} interface for Oracle based drivers.
 */
abstract class AbstractOracleDriver implements DriverExceptionConverterDriver
{
    
/**
     * {@inheritdoc}
     *
     * @deprecated
     */
    
public function convertException($messageDeprecatedDriverException $exception)
    {
        switch (
$exception->getErrorCode()) {
            case 
'1':
            case 
'2299':
            case 
'38911':
                return new 
UniqueConstraintViolationException($message$exception);

            case 
'904':
                return new 
InvalidFieldNameException($message$exception);

            case 
'918':
            case 
'960':
                return new 
NonUniqueFieldNameException($message$exception);

            case 
'923':
                return new 
SyntaxErrorException($message$exception);

            case 
'942':
                return new 
TableNotFoundException($message$exception);

            case 
'955':
                return new 
TableExistsException($message$exception);

            case 
'1017':
            case 
'12545':
                return new 
ConnectionException($message$exception);

            case 
'1400':
                return new 
NotNullConstraintViolationException($message$exception);

            case 
'2266':
            case 
'2291':
            case 
'2292':
                return new 
ForeignKeyConstraintViolationException($message$exception);
        }

        return new 
DriverException($message$exception);
    }

    
/**
     * {@inheritdoc}
     *
     * @deprecated Use Connection::getDatabase() instead.
     */
    
public function getDatabase(Connection $conn)
    {
        
$params $conn->getParams();

        return 
$params['user'];
    }

    
/**
     * {@inheritdoc}
     */
    
public function getDatabasePlatform()
    {
        return new 
OraclePlatform();
    }

    
/**
     * {@inheritdoc}
     */
    
public function getSchemaManager(Connection $conn)
    {
        return new 
OracleSchemaManager($conn);
    }

    
/**
     * Returns an appropriate Easy Connect String for the given parameters.
     *
     * @param mixed[] $params The connection parameters to return the Easy Connect String for.
     *
     * @return string
     */
    
protected function getEasyConnectString(array $params)
    {
        return (string) 
EasyConnectString::fromConnectionParameters($params);
    }
}
Онлайн: 2
Реклама