PHP Class eZ\Publish\Core\Persistence\Doctrine\ConnectionHandler

Inheritance: implements eZ\Publish\Core\Persistence\Database\DatabaseHandler
Show file Open project: ezsystems/ezpublish-kernel Class Usage Examples

Protected Properties

Property Type Description
$connection Doctrine\DBAL\Connection

Public Methods

Method Description
__construct ( Doctrine\DBAL\Connection $connection )
alias ( $name, $alias ) : string Custom alias method.
aliasedColumn ( eZ\Publish\Core\Persistence\Database\SelectQuery $query, string $columnName, string | null $tableName = null ) : string Creates an alias for $tableName, $columnName in $query.
beginTransaction ( ) Begin a transaction.
commit ( ) Commit a transaction.
createConnectionFromDSN ( string | array $dsn ) : Doctrine\DBAL\Connection
createDeleteQuery ( ) : eZ\Publish\Core\Persistence\Database\DeleteQuery Create a Delete Query object.
createFromConnection ( Doctrine\DBAL\Connection $connection ) : ConnectionHandler Create a Connection Handler from given Doctrine $connection.
createFromDSN ( string | array $dsn ) : ConnectionHandler Create a Connection Handler with corresponding Doctrine connection from DSN.
createInsertQuery ( ) : eZ\Publish\Core\Persistence\Database\InsertQuery Create Insert Query object.
createSelectQuery ( ) : eZ\Publish\Core\Persistence\Database\SelectQuery Create Select Query object.
createUpdateQuery ( ) : eZ\Publish\Core\Persistence\Database\UpdateQuery Create update Query object.
exec ( string $query ) Execute a query against the database.
getAutoIncrementValue ( string $table, string $column ) : mixed Get auto increment value.
getConnection ( ) : Doctrine\DBAL\Connection
getName ( ) : string
getSequenceName ( string $table, string $column ) : string Returns the name of the affected sequence.
lastInsertId ( string $sequenceName = null ) : string Retrieve the last auto incremet or sequence id.
parseDSN ( string $dsn ) : array Returns the Data Source Name as a structure containing the various parts of the DSN.
prepare ( $query )
quoteColumn ( string $columnName, string $tableName = null ) : string Returns a qualified identifier for $columnName in $tableName.
quoteIdentifier ( string $identifier ) : string Custom quote identifier method.
quoteTable ( string $tableName ) : string Returns a qualified identifier for $tableName.
rollBack ( ) Rollback a transaction.
useSequences ( ) : boolean

Method Details

__construct() public method

public __construct ( Doctrine\DBAL\Connection $connection )
$connection Doctrine\DBAL\Connection

alias() public method

Ignores some properties of identifier quoting, but since we use somehow sane table and column names, ourselves, this is fine. This is an optimization and works around the ezcDB implementation.
public alias ( $name, $alias ) : string
return string

aliasedColumn() public method

Creates an alias for $tableName, $columnName in $query.
public aliasedColumn ( eZ\Publish\Core\Persistence\Database\SelectQuery $query, string $columnName, string | null $tableName = null ) : string
$query eZ\Publish\Core\Persistence\Database\SelectQuery
$columnName string
$tableName string | null
return string

beginTransaction() public method

Begin a transaction.
public beginTransaction ( )

commit() public method

Commit a transaction.
public commit ( )

createConnectionFromDSN() public static method

public static createConnectionFromDSN ( string | array $dsn ) : Doctrine\DBAL\Connection
$dsn string | array
return Doctrine\DBAL\Connection

createDeleteQuery() public method

Create a Delete Query object.
public createDeleteQuery ( ) : eZ\Publish\Core\Persistence\Database\DeleteQuery
return eZ\Publish\Core\Persistence\Database\DeleteQuery

createFromConnection() public static method

Create a Connection Handler from given Doctrine $connection.
public static createFromConnection ( Doctrine\DBAL\Connection $connection ) : ConnectionHandler
$connection Doctrine\DBAL\Connection
return ConnectionHandler

createFromDSN() public static method

Create a Connection Handler with corresponding Doctrine connection from DSN.
public static createFromDSN ( string | array $dsn ) : ConnectionHandler
$dsn string | array
return ConnectionHandler

createInsertQuery() public method

Create Insert Query object.
public createInsertQuery ( ) : eZ\Publish\Core\Persistence\Database\InsertQuery
return eZ\Publish\Core\Persistence\Database\InsertQuery

createSelectQuery() public method

Create Select Query object.
public createSelectQuery ( ) : eZ\Publish\Core\Persistence\Database\SelectQuery
return eZ\Publish\Core\Persistence\Database\SelectQuery

createUpdateQuery() public method

Create update Query object.
public createUpdateQuery ( ) : eZ\Publish\Core\Persistence\Database\UpdateQuery
return eZ\Publish\Core\Persistence\Database\UpdateQuery

exec() public method

Execute a query against the database.
public exec ( string $query )
$query string

getAutoIncrementValue() public method

Returns the value used for autoincrement tables. Usually this will just be null. In case for sequence based RDBMS this method can return a proper value for the given column.
public getAutoIncrementValue ( string $table, string $column ) : mixed
$table string
$column string
return mixed

getConnection() public method

public getConnection ( ) : Doctrine\DBAL\Connection
return Doctrine\DBAL\Connection

getName() public method

public getName ( ) : string
return string

getSequenceName() public method

Returns the name of the affected sequence.
public getSequenceName ( string $table, string $column ) : string
$table string
$column string
return string

lastInsertId() public method

Retrieve the last auto incremet or sequence id.
public lastInsertId ( string $sequenceName = null ) : string
$sequenceName string
return string

parseDSN() public static method

Additional keys can be added by appending a URI query string to the end of the DSN. The format of the supplied DSN is in its fullest form: driver://user:password@protocol+host/database?option=8&another=true Most variations are allowed: driver://user:password@protocol+host:110//usr/db_file.db?mode=0644 driver://user:password@host/dbname driver://user:password@host driver://user@host driver://host/dbname driver://host driver This function is 'borrowed' from PEAR /DB.php .
public static parseDSN ( string $dsn ) : array
$dsn string Data Source Name to be parsed
return array an associative array with the following keys: + driver: Database backend used in PHP (mysql, odbc etc.) + host: Host specification (hostname[:port]) + dbname: Database to use on the DBMS server + username: User name for login + password: Password for login

prepare() public method

public prepare ( $query )

quoteColumn() public method

Returns a qualified identifier for $columnName in $tableName.
public quoteColumn ( string $columnName, string $tableName = null ) : string
$columnName string
$tableName string
return string

quoteIdentifier() public method

Ignores some properties of identifier quoting, but since we use somehow sane table and column names, ourselves, this is fine. This is an optimization and works around the ezcDB implementation.
public quoteIdentifier ( string $identifier ) : string
$identifier string
return string

quoteTable() public method

Returns a qualified identifier for $tableName.
public quoteTable ( string $tableName ) : string
$tableName string
return string

rollBack() public method

Rollback a transaction.
public rollBack ( )

useSequences() public method

public useSequences ( ) : boolean
return boolean

Property Details

$connection protected property

protected Connection,Doctrine\DBAL $connection
return Doctrine\DBAL\Connection