mirror of
https://github.com/dg/dibi.git
synced 2025-08-06 14:16:39 +02:00
updated for Nette 2.0 beta: exceptions
This commit is contained in:
@@ -45,12 +45,12 @@ class DibiFirebirdDriver extends DibiObject implements IDibiDriver, IDibiResultD
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('interbase')) {
|
if (!extension_loaded('interbase')) {
|
||||||
throw new NotSupportedException("PHP extension 'interbase' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'interbase' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,7 +170,7 @@ class DibiFirebirdDriver extends DibiObject implements IDibiDriver, IDibiResultD
|
|||||||
public function begin($savepoint = NULL)
|
public function begin($savepoint = NULL)
|
||||||
{
|
{
|
||||||
if ($savepoint !== NULL) {
|
if ($savepoint !== NULL) {
|
||||||
throw new NotSupportedException('Savepoints are not supported in Firebird/Interbase.');
|
throw new DibiNotSupportedException('Savepoints are not supported in Firebird/Interbase.');
|
||||||
}
|
}
|
||||||
$this->transaction = ibase_trans($this->resource);
|
$this->transaction = ibase_trans($this->resource);
|
||||||
$this->inTransaction = TRUE;
|
$this->inTransaction = TRUE;
|
||||||
@@ -187,7 +187,7 @@ class DibiFirebirdDriver extends DibiObject implements IDibiDriver, IDibiResultD
|
|||||||
public function commit($savepoint = NULL)
|
public function commit($savepoint = NULL)
|
||||||
{
|
{
|
||||||
if ($savepoint !== NULL) {
|
if ($savepoint !== NULL) {
|
||||||
throw new NotSupportedException('Savepoints are not supported in Firebird/Interbase.');
|
throw new DibiNotSupportedException('Savepoints are not supported in Firebird/Interbase.');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ibase_commit($this->transaction)) {
|
if (!ibase_commit($this->transaction)) {
|
||||||
@@ -208,7 +208,7 @@ class DibiFirebirdDriver extends DibiObject implements IDibiDriver, IDibiResultD
|
|||||||
public function rollback($savepoint = NULL)
|
public function rollback($savepoint = NULL)
|
||||||
{
|
{
|
||||||
if ($savepoint !== NULL) {
|
if ($savepoint !== NULL) {
|
||||||
throw new NotSupportedException('Savepoints are not supported in Firebird/Interbase.');
|
throw new DibiNotSupportedException('Savepoints are not supported in Firebird/Interbase.');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ibase_rollback($this->transaction)) {
|
if (!ibase_rollback($this->transaction)) {
|
||||||
@@ -312,7 +312,7 @@ class DibiFirebirdDriver extends DibiObject implements IDibiDriver, IDibiResultD
|
|||||||
*/
|
*/
|
||||||
public function escapeLike($value, $pos)
|
public function escapeLike($value, $pos)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -410,7 +410,7 @@ class DibiFirebirdDriver extends DibiObject implements IDibiDriver, IDibiResultD
|
|||||||
*/
|
*/
|
||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
throw new NotSupportedException("Firebird/Interbase do not support seek in result set.");
|
throw new DibiNotSupportedException("Firebird/Interbase do not support seek in result set.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -444,7 +444,7 @@ class DibiFirebirdDriver extends DibiObject implements IDibiDriver, IDibiResultD
|
|||||||
*/
|
*/
|
||||||
public function getResultColumns()
|
public function getResultColumns()
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -38,12 +38,12 @@ class DibiMsSqlDriver extends DibiObject implements IDibiDriver, IDibiResultDriv
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('mssql')) {
|
if (!extension_loaded('mssql')) {
|
||||||
throw new NotSupportedException("PHP extension 'mssql' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'mssql' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -189,7 +189,7 @@ class DibiMsSqlDriver extends DibiObject implements IDibiDriver, IDibiResultDriv
|
|||||||
*/
|
*/
|
||||||
public function getReflector()
|
public function getReflector()
|
||||||
{
|
{
|
||||||
throw new NotSupportedException;
|
throw new DibiNotSupportedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -292,7 +292,7 @@ class DibiMsSqlDriver extends DibiObject implements IDibiDriver, IDibiResultDriv
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($offset) {
|
if ($offset) {
|
||||||
throw new NotImplementedException('Offset is not implemented.');
|
throw new DibiNotImplementedException('Offset is not implemented.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -42,12 +42,12 @@ class DibiMsSql2005Driver extends DibiObject implements IDibiDriver, IDibiResult
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('sqlsrv')) {
|
if (!extension_loaded('sqlsrv')) {
|
||||||
throw new NotSupportedException("PHP extension 'sqlsrv' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'sqlsrv' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -197,7 +197,7 @@ class DibiMsSql2005Driver extends DibiObject implements IDibiDriver, IDibiResult
|
|||||||
*/
|
*/
|
||||||
public function getReflector()
|
public function getReflector()
|
||||||
{
|
{
|
||||||
throw new NotSupportedException;
|
throw new DibiNotSupportedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -300,7 +300,7 @@ class DibiMsSql2005Driver extends DibiObject implements IDibiDriver, IDibiResult
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($offset) {
|
if ($offset) {
|
||||||
throw new NotImplementedException('Offset is not implemented.');
|
throw new DibiNotImplementedException('Offset is not implemented.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -327,7 +327,7 @@ class DibiMsSql2005Driver extends DibiObject implements IDibiDriver, IDibiResult
|
|||||||
*/
|
*/
|
||||||
public function getRowCount()
|
public function getRowCount()
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('Row count is not available for unbuffered queries.');
|
throw new DibiNotSupportedException('Row count is not available for unbuffered queries.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -351,7 +351,7 @@ class DibiMsSql2005Driver extends DibiObject implements IDibiDriver, IDibiResult
|
|||||||
*/
|
*/
|
||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('Cannot seek an unbuffered result set.');
|
throw new DibiNotSupportedException('Cannot seek an unbuffered result set.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -54,12 +54,12 @@ class DibiMySqlDriver extends DibiObject implements IDibiDriver, IDibiResultDriv
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('mysql')) {
|
if (!extension_loaded('mysql')) {
|
||||||
throw new NotSupportedException("PHP extension 'mysql' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'mysql' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -398,7 +398,7 @@ class DibiMySqlDriver extends DibiObject implements IDibiDriver, IDibiResultDriv
|
|||||||
public function getRowCount()
|
public function getRowCount()
|
||||||
{
|
{
|
||||||
if (!$this->buffered) {
|
if (!$this->buffered) {
|
||||||
throw new NotSupportedException('Row count is not available for unbuffered queries.');
|
throw new DibiNotSupportedException('Row count is not available for unbuffered queries.');
|
||||||
}
|
}
|
||||||
return mysql_num_rows($this->resultSet);
|
return mysql_num_rows($this->resultSet);
|
||||||
}
|
}
|
||||||
@@ -426,7 +426,7 @@ class DibiMySqlDriver extends DibiObject implements IDibiDriver, IDibiResultDriv
|
|||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
if (!$this->buffered) {
|
if (!$this->buffered) {
|
||||||
throw new NotSupportedException('Cannot seek an unbuffered result set.');
|
throw new DibiNotSupportedException('Cannot seek an unbuffered result set.');
|
||||||
}
|
}
|
||||||
|
|
||||||
return mysql_data_seek($this->resultSet, $row);
|
return mysql_data_seek($this->resultSet, $row);
|
||||||
|
@@ -125,7 +125,7 @@ class DibiMySqlReflector extends DibiObject implements IDibiReflector
|
|||||||
*/
|
*/
|
||||||
public function getForeignKeys($table)
|
public function getForeignKeys($table)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -55,12 +55,12 @@ class DibiMySqliDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('mysqli')) {
|
if (!extension_loaded('mysqli')) {
|
||||||
throw new NotSupportedException("PHP extension 'mysqli' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'mysqli' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -394,7 +394,7 @@ class DibiMySqliDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
public function getRowCount()
|
public function getRowCount()
|
||||||
{
|
{
|
||||||
if (!$this->buffered) {
|
if (!$this->buffered) {
|
||||||
throw new NotSupportedException('Row count is not available for unbuffered queries.');
|
throw new DibiNotSupportedException('Row count is not available for unbuffered queries.');
|
||||||
}
|
}
|
||||||
return mysqli_num_rows($this->resultSet);
|
return mysqli_num_rows($this->resultSet);
|
||||||
}
|
}
|
||||||
@@ -422,7 +422,7 @@ class DibiMySqliDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
if (!$this->buffered) {
|
if (!$this->buffered) {
|
||||||
throw new NotSupportedException('Cannot seek an unbuffered result set.');
|
throw new DibiNotSupportedException('Cannot seek an unbuffered result set.');
|
||||||
}
|
}
|
||||||
return mysqli_data_seek($this->resultSet, $row);
|
return mysqli_data_seek($this->resultSet, $row);
|
||||||
}
|
}
|
||||||
|
@@ -43,12 +43,12 @@ class DibiOdbcDriver extends DibiObject implements IDibiDriver, IDibiResultDrive
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('odbc')) {
|
if (!extension_loaded('odbc')) {
|
||||||
throw new NotSupportedException("PHP extension 'odbc' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'odbc' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -133,7 +133,7 @@ class DibiOdbcDriver extends DibiObject implements IDibiDriver, IDibiResultDrive
|
|||||||
*/
|
*/
|
||||||
public function getInsertId($sequence)
|
public function getInsertId($sequence)
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('ODBC does not support autoincrementing.');
|
throw new DibiNotSupportedException('ODBC does not support autoincrementing.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -314,7 +314,7 @@ class DibiOdbcDriver extends DibiObject implements IDibiDriver, IDibiResultDrive
|
|||||||
$sql = 'SELECT TOP ' . (int) $limit . ' * FROM (' . $sql . ')';
|
$sql = 'SELECT TOP ' . (int) $limit . ' * FROM (' . $sql . ')';
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($offset) throw new NotSupportedException('Offset is not implemented in driver odbc.');
|
if ($offset) throw new DibiNotSupportedException('Offset is not implemented in driver odbc.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -484,7 +484,7 @@ class DibiOdbcDriver extends DibiObject implements IDibiDriver, IDibiResultDrive
|
|||||||
*/
|
*/
|
||||||
public function getIndexes($table)
|
public function getIndexes($table)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -496,7 +496,7 @@ class DibiOdbcDriver extends DibiObject implements IDibiDriver, IDibiResultDrive
|
|||||||
*/
|
*/
|
||||||
public function getForeignKeys($table)
|
public function getForeignKeys($table)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -45,12 +45,12 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('oci8')) {
|
if (!extension_loaded('oci8')) {
|
||||||
throw new NotSupportedException("PHP extension 'oci8' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'oci8' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -124,7 +124,7 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function getAffectedRows()
|
public function getAffectedRows()
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -269,7 +269,7 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function escapeLike($value, $pos)
|
public function escapeLike($value, $pos)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -332,7 +332,7 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function getRowCount()
|
public function getRowCount()
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('Row count is not available for unbuffered queries.');
|
throw new DibiNotSupportedException('Row count is not available for unbuffered queries.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -356,7 +356,7 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -437,7 +437,7 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function getColumns($table)
|
public function getColumns($table)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -449,7 +449,7 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function getIndexes($table)
|
public function getIndexes($table)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -461,7 +461,7 @@ class DibiOracleDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function getForeignKeys($table)
|
public function getForeignKeys($table)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -47,12 +47,12 @@ class DibiPdoDriver extends DibiObject implements IDibiDriver, IDibiResultDriver
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('pdo')) {
|
if (!extension_loaded('pdo')) {
|
||||||
throw new NotSupportedException("PHP extension 'pdo' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'pdo' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -230,7 +230,7 @@ class DibiPdoDriver extends DibiObject implements IDibiDriver, IDibiResultDriver
|
|||||||
return new DibiSqliteReflector($this);
|
return new DibiSqliteReflector($this);
|
||||||
|
|
||||||
default:
|
default:
|
||||||
throw new NotSupportedException;
|
throw new DibiNotSupportedException;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -315,7 +315,7 @@ class DibiPdoDriver extends DibiObject implements IDibiDriver, IDibiResultDriver
|
|||||||
*/
|
*/
|
||||||
public function escapeLike($value, $pos)
|
public function escapeLike($value, $pos)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -381,7 +381,7 @@ class DibiPdoDriver extends DibiObject implements IDibiDriver, IDibiResultDriver
|
|||||||
// intentionally break omitted
|
// intentionally break omitted
|
||||||
|
|
||||||
default:
|
default:
|
||||||
throw new NotSupportedException('PDO or driver does not support applying limit or offset.');
|
throw new DibiNotSupportedException('PDO or driver does not support applying limit or offset.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -421,7 +421,7 @@ class DibiPdoDriver extends DibiObject implements IDibiDriver, IDibiResultDriver
|
|||||||
*/
|
*/
|
||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('Cannot seek an unbuffered result set.');
|
throw new DibiNotSupportedException('Cannot seek an unbuffered result set.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -449,7 +449,7 @@ class DibiPdoDriver extends DibiObject implements IDibiDriver, IDibiResultDriver
|
|||||||
for ($i = 0; $i < $count; $i++) {
|
for ($i = 0; $i < $count; $i++) {
|
||||||
$row = @$this->resultSet->getColumnMeta($i); // intentionally @
|
$row = @$this->resultSet->getColumnMeta($i); // intentionally @
|
||||||
if ($row === FALSE) {
|
if ($row === FALSE) {
|
||||||
throw new NotSupportedException('Driver does not support meta data.');
|
throw new DibiNotSupportedException('Driver does not support meta data.');
|
||||||
}
|
}
|
||||||
// PHP < 5.2.3 compatibility
|
// PHP < 5.2.3 compatibility
|
||||||
// @see: http://php.net/manual/en/pdostatement.getcolumnmeta.php#pdostatement.getcolumnmeta.changelog
|
// @see: http://php.net/manual/en/pdostatement.getcolumnmeta.php#pdostatement.getcolumnmeta.changelog
|
||||||
|
@@ -44,12 +44,12 @@ class DibiPostgreDriver extends DibiObject implements IDibiDriver, IDibiResultDr
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('pgsql')) {
|
if (!extension_loaded('pgsql')) {
|
||||||
throw new NotSupportedException("PHP extension 'pgsql' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'pgsql' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -323,7 +323,7 @@ class DibiPostgreDriver extends DibiObject implements IDibiDriver, IDibiResultDr
|
|||||||
$value = pg_escape_string($this->connection, $value);
|
$value = pg_escape_string($this->connection, $value);
|
||||||
} else {
|
} else {
|
||||||
$value = pg_escape_string($value);
|
$value = pg_escape_string($value);
|
||||||
}
|
}
|
||||||
|
|
||||||
$value = strtr($value, array( '%' => '\\\\%', '_' => '\\\\_'));
|
$value = strtr($value, array( '%' => '\\\\%', '_' => '\\\\_'));
|
||||||
return ($pos <= 0 ? "'%" : "'") . $value . ($pos >= 0 ? "%'" : "'");
|
return ($pos <= 0 ? "'%" : "'") . $value . ($pos >= 0 ? "%'" : "'");
|
||||||
@@ -578,7 +578,7 @@ class DibiPostgreDriver extends DibiObject implements IDibiDriver, IDibiResultDr
|
|||||||
*/
|
*/
|
||||||
public function getForeignKeys($table)
|
public function getForeignKeys($table)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -52,12 +52,12 @@ class DibiSqliteDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('sqlite')) {
|
if (!extension_loaded('sqlite')) {
|
||||||
throw new NotSupportedException("PHP extension 'sqlite' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'sqlite' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -279,7 +279,7 @@ class DibiSqliteDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
*/
|
*/
|
||||||
public function escapeLike($value, $pos)
|
public function escapeLike($value, $pos)
|
||||||
{
|
{
|
||||||
throw new NotSupportedException;
|
throw new DibiNotSupportedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -327,7 +327,7 @@ class DibiSqliteDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
public function getRowCount()
|
public function getRowCount()
|
||||||
{
|
{
|
||||||
if (!$this->buffered) {
|
if (!$this->buffered) {
|
||||||
throw new NotSupportedException('Row count is not available for unbuffered queries.');
|
throw new DibiNotSupportedException('Row count is not available for unbuffered queries.');
|
||||||
}
|
}
|
||||||
return sqlite_num_rows($this->resultSet);
|
return sqlite_num_rows($this->resultSet);
|
||||||
}
|
}
|
||||||
@@ -367,7 +367,7 @@ class DibiSqliteDriver extends DibiObject implements IDibiDriver, IDibiResultDri
|
|||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
if (!$this->buffered) {
|
if (!$this->buffered) {
|
||||||
throw new NotSupportedException('Cannot seek an unbuffered result set.');
|
throw new DibiNotSupportedException('Cannot seek an unbuffered result set.');
|
||||||
}
|
}
|
||||||
return sqlite_seek($this->resultSet, $row);
|
return sqlite_seek($this->resultSet, $row);
|
||||||
}
|
}
|
||||||
|
@@ -150,7 +150,7 @@ class DibiSqliteReflector extends DibiObject implements IDibiReflector
|
|||||||
public function getForeignKeys($table)
|
public function getForeignKeys($table)
|
||||||
{
|
{
|
||||||
if (!($this->driver instanceof DibiSqlite3Driver)) {
|
if (!($this->driver instanceof DibiSqlite3Driver)) {
|
||||||
// throw new NotSupportedException; // @see http://www.sqlite.org/foreignkeys.html
|
// throw new DibiNotSupportedException; // @see http://www.sqlite.org/foreignkeys.html
|
||||||
}
|
}
|
||||||
$res = $this->driver->query("PRAGMA foreign_key_list([$table])");
|
$res = $this->driver->query("PRAGMA foreign_key_list([$table])");
|
||||||
$keys = array();
|
$keys = array();
|
||||||
|
@@ -47,12 +47,12 @@ class DibiSqlite3Driver extends DibiObject implements IDibiDriver, IDibiResultDr
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
if (!extension_loaded('sqlite3')) {
|
if (!extension_loaded('sqlite3')) {
|
||||||
throw new NotSupportedException("PHP extension 'sqlite3' is not loaded.");
|
throw new DibiNotSupportedException("PHP extension 'sqlite3' is not loaded.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -327,11 +327,11 @@ class DibiSqlite3Driver extends DibiObject implements IDibiDriver, IDibiResultDr
|
|||||||
/**
|
/**
|
||||||
* Returns the number of rows in a result set.
|
* Returns the number of rows in a result set.
|
||||||
* @return int
|
* @return int
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function getRowCount()
|
public function getRowCount()
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('Row count is not available for unbuffered queries.');
|
throw new DibiNotSupportedException('Row count is not available for unbuffered queries.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -364,11 +364,11 @@ class DibiSqlite3Driver extends DibiObject implements IDibiDriver, IDibiResultDr
|
|||||||
* Moves cursor position without fetching row.
|
* Moves cursor position without fetching row.
|
||||||
* @param int the 0-based cursor pos to seek to
|
* @param int the 0-based cursor pos to seek to
|
||||||
* @return boolean TRUE on success, FALSE if unable to seek to specified record
|
* @return boolean TRUE on success, FALSE if unable to seek to specified record
|
||||||
* @throws NotSupportedException
|
* @throws DibiNotSupportedException
|
||||||
*/
|
*/
|
||||||
public function seek($row)
|
public function seek($row)
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('Cannot seek an unbuffered result set.');
|
throw new DibiNotSupportedException('Cannot seek an unbuffered result set.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -689,7 +689,7 @@ class DibiConnection extends DibiObject
|
|||||||
|
|
||||||
$handle = @fopen($file, 'r'); // intentionally @
|
$handle = @fopen($file, 'r'); // intentionally @
|
||||||
if (!$handle) {
|
if (!$handle) {
|
||||||
throw new FileNotFoundException("Cannot open file '$file'.");
|
throw new RuntimeException("Cannot open file '$file'.");
|
||||||
}
|
}
|
||||||
|
|
||||||
$count = 0;
|
$count = 0;
|
||||||
@@ -726,7 +726,7 @@ class DibiConnection extends DibiObject
|
|||||||
*/
|
*/
|
||||||
public function __wakeup()
|
public function __wakeup()
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('You cannot serialize or unserialize ' . $this->getClass() . ' instances.');
|
throw new DibiNotSupportedException('You cannot serialize or unserialize ' . $this->getClass() . ' instances.');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -736,7 +736,7 @@ class DibiConnection extends DibiObject
|
|||||||
*/
|
*/
|
||||||
public function __sleep()
|
public function __sleep()
|
||||||
{
|
{
|
||||||
throw new NotSupportedException('You cannot serialize or unserialize ' . $this->getClass() . ' instances.');
|
throw new DibiNotSupportedException('You cannot serialize or unserialize ' . $this->getClass() . ' instances.');
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -325,7 +325,7 @@ class DibiTableInfo extends DibiObject
|
|||||||
*/
|
*/
|
||||||
protected function initForeignKeys()
|
protected function initForeignKeys()
|
||||||
{
|
{
|
||||||
throw new NotImplementedException;
|
throw new DibiNotImplementedException;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -13,14 +13,11 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (!defined('NETTE')) {
|
class DibiNotImplementedException extends LogicException
|
||||||
class NotImplementedException extends LogicException {}
|
{}
|
||||||
class NotSupportedException extends LogicException {}
|
|
||||||
class MemberAccessException extends LogicException {}
|
class DibiNotSupportedException extends LogicException
|
||||||
class InvalidStateException extends RuntimeException {}
|
{}
|
||||||
class IOException extends RuntimeException {}
|
|
||||||
class FileNotFoundException extends IOException {}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -87,14 +87,14 @@ abstract class DibiObject
|
|||||||
* @param string method name
|
* @param string method name
|
||||||
* @param array arguments
|
* @param array arguments
|
||||||
* @return mixed
|
* @return mixed
|
||||||
* @throws \MemberAccessException
|
* @throws \LogicException
|
||||||
*/
|
*/
|
||||||
public function __call($name, $args)
|
public function __call($name, $args)
|
||||||
{
|
{
|
||||||
$class = get_class($this);
|
$class = get_class($this);
|
||||||
|
|
||||||
if ($name === '') {
|
if ($name === '') {
|
||||||
throw new MemberAccessException("Call to class '$class' method without name.");
|
throw new LogicException("Call to class '$class' method without name.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// event functionality
|
// event functionality
|
||||||
@@ -122,7 +122,7 @@ abstract class DibiObject
|
|||||||
return call_user_func_array($cb, $args);
|
return call_user_func_array($cb, $args);
|
||||||
}
|
}
|
||||||
|
|
||||||
throw new MemberAccessException("Call to undefined method $class::$name().");
|
throw new LogicException("Call to undefined method $class::$name().");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -132,12 +132,12 @@ abstract class DibiObject
|
|||||||
* @param string method name (in lower case!)
|
* @param string method name (in lower case!)
|
||||||
* @param array arguments
|
* @param array arguments
|
||||||
* @return mixed
|
* @return mixed
|
||||||
* @throws \MemberAccessException
|
* @throws \LogicException
|
||||||
*/
|
*/
|
||||||
public static function __callStatic($name, $args)
|
public static function __callStatic($name, $args)
|
||||||
{
|
{
|
||||||
$class = get_called_class();
|
$class = get_called_class();
|
||||||
throw new MemberAccessException("Call to undefined static method $class::$name().");
|
throw new LogicException("Call to undefined static method $class::$name().");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -208,14 +208,14 @@ abstract class DibiObject
|
|||||||
* Returns property value. Do not call directly.
|
* Returns property value. Do not call directly.
|
||||||
* @param string property name
|
* @param string property name
|
||||||
* @return mixed property value
|
* @return mixed property value
|
||||||
* @throws \MemberAccessException if the property is not defined.
|
* @throws \LogicException if the property is not defined.
|
||||||
*/
|
*/
|
||||||
public function &__get($name)
|
public function &__get($name)
|
||||||
{
|
{
|
||||||
$class = get_class($this);
|
$class = get_class($this);
|
||||||
|
|
||||||
if ($name === '') {
|
if ($name === '') {
|
||||||
throw new MemberAccessException("Cannot read a class '$class' property without name.");
|
throw new LogicException("Cannot read a class '$class' property without name.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// property getter support
|
// property getter support
|
||||||
@@ -236,7 +236,7 @@ abstract class DibiObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
$name = func_get_arg(0);
|
$name = func_get_arg(0);
|
||||||
throw new MemberAccessException("Cannot read an undeclared property $class::\$$name.");
|
throw new LogicException("Cannot read an undeclared property $class::\$$name.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -246,14 +246,14 @@ abstract class DibiObject
|
|||||||
* @param string property name
|
* @param string property name
|
||||||
* @param mixed property value
|
* @param mixed property value
|
||||||
* @return void
|
* @return void
|
||||||
* @throws \MemberAccessException if the property is not defined or is read-only
|
* @throws \LogicException if the property is not defined or is read-only
|
||||||
*/
|
*/
|
||||||
public function __set($name, $value)
|
public function __set($name, $value)
|
||||||
{
|
{
|
||||||
$class = get_class($this);
|
$class = get_class($this);
|
||||||
|
|
||||||
if ($name === '') {
|
if ($name === '') {
|
||||||
throw new MemberAccessException("Cannot assign to a class '$class' property without name.");
|
throw new LogicException("Cannot assign to a class '$class' property without name.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// property setter support
|
// property setter support
|
||||||
@@ -266,12 +266,12 @@ abstract class DibiObject
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
$name = func_get_arg(0);
|
$name = func_get_arg(0);
|
||||||
throw new MemberAccessException("Cannot assign to a read-only property $class::\$$name.");
|
throw new LogicException("Cannot assign to a read-only property $class::\$$name.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$name = func_get_arg(0);
|
$name = func_get_arg(0);
|
||||||
throw new MemberAccessException("Cannot assign to an undeclared property $class::\$$name.");
|
throw new LogicException("Cannot assign to an undeclared property $class::\$$name.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -293,12 +293,12 @@ abstract class DibiObject
|
|||||||
* Access to undeclared property.
|
* Access to undeclared property.
|
||||||
* @param string property name
|
* @param string property name
|
||||||
* @return void
|
* @return void
|
||||||
* @throws \MemberAccessException
|
* @throws \LogicException
|
||||||
*/
|
*/
|
||||||
public function __unset($name)
|
public function __unset($name)
|
||||||
{
|
{
|
||||||
$class = get_class($this);
|
$class = get_class($this);
|
||||||
throw new MemberAccessException("Cannot unset the property $class::\$$name.");
|
throw new LogicException("Cannot unset the property $class::\$$name.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -107,12 +107,12 @@ class DibiResult extends DibiObject implements IDataSource
|
|||||||
/**
|
/**
|
||||||
* Safe access to property $driver.
|
* Safe access to property $driver.
|
||||||
* @return IDibiResultDriver
|
* @return IDibiResultDriver
|
||||||
* @throws InvalidStateException
|
* @throws RuntimeException
|
||||||
*/
|
*/
|
||||||
private function getDriver()
|
private function getDriver()
|
||||||
{
|
{
|
||||||
if ($this->driver === NULL) {
|
if ($this->driver === NULL) {
|
||||||
throw new InvalidStateException('Result-set was released from memory.');
|
throw new RuntimeException('Result-set was released from memory.');
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->driver;
|
return $this->driver;
|
||||||
|
Reference in New Issue
Block a user