- Patch #517502 by Crell: make transaction API follow its own documentation.
parent
6dc5b5449d
commit
6682ab936c
|
|
@ -225,7 +225,7 @@ abstract class DatabaseConnection extends PDO {
|
||||||
*
|
*
|
||||||
* @var boolean
|
* @var boolean
|
||||||
*/
|
*/
|
||||||
protected $willRollBack;
|
protected $willRollback;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The name of the Select class for this connection.
|
* The name of the Select class for this connection.
|
||||||
|
|
@ -849,12 +849,12 @@ abstract class DatabaseConnection extends PDO {
|
||||||
*
|
*
|
||||||
* This method throws an exception if no transaction is active.
|
* This method throws an exception if no transaction is active.
|
||||||
*/
|
*/
|
||||||
public function rollBack() {
|
public function rollback() {
|
||||||
if ($this->transactionLayers == 0) {
|
if ($this->transactionLayers == 0) {
|
||||||
throw new NoActiveTransactionException();
|
throw new NoActiveTransactionException();
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->willRollBack = TRUE;
|
$this->willRollback = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -867,12 +867,12 @@ abstract class DatabaseConnection extends PDO {
|
||||||
* @return
|
* @return
|
||||||
* TRUE if the transaction will roll back, FALSE otherwise.
|
* TRUE if the transaction will roll back, FALSE otherwise.
|
||||||
*/
|
*/
|
||||||
public function willRollBack() {
|
public function willRollback() {
|
||||||
if ($this->transactionLayers == 0) {
|
if ($this->transactionLayers == 0) {
|
||||||
throw new NoActiveTransactionException();
|
throw new NoActiveTransactionException();
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->willRollBack;
|
return $this->willRollback;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -1448,6 +1448,23 @@ class DatabaseTransaction {
|
||||||
$this->connection->popTransaction();
|
$this->connection->popTransaction();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Roll back the current transaction.
|
||||||
|
*
|
||||||
|
* This is just a wrapper method to rollback whatever transaction stack we
|
||||||
|
* are currently in, which is managed by the connection object itself.
|
||||||
|
*/
|
||||||
|
public function rollback() {
|
||||||
|
$this->connection->rollback();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if this transaction will roll back.
|
||||||
|
*/
|
||||||
|
public function willRollback() {
|
||||||
|
return $this->connection->willRollback();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2624,8 +2624,8 @@ class DatabaseTransactionTestCase extends DatabaseTestCase {
|
||||||
if ($rollback) {
|
if ($rollback) {
|
||||||
// Roll back the transaction, if requested.
|
// Roll back the transaction, if requested.
|
||||||
// This rollback should propagate to the the outer transaction, if present.
|
// This rollback should propagate to the the outer transaction, if present.
|
||||||
$connection->rollBack();
|
$txn->rollback();
|
||||||
$this->assertTrue($connection->willRollBack(), t('Transaction is scheduled to roll back after calling rollBack().'));
|
$this->assertTrue($txn->willRollback(), t('Transaction is scheduled to roll back after calling rollback().'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue