summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2009-07-13 07:27:15 +0000
committerDries Buytaert <dries@buytaert.net>2009-07-13 07:27:15 +0000
commit6682ab936c8d49a8be32b2e149b45f1eba79de0c (patch)
treedc693e966ed909edd3f7cd605befb70fdcd2049e
parent6dc5b5449d6c52b433e6b712786c2e49778a363f (diff)
downloadbrdo-6682ab936c8d49a8be32b2e149b45f1eba79de0c.tar.gz
brdo-6682ab936c8d49a8be32b2e149b45f1eba79de0c.tar.bz2
- Patch #517502 by Crell: make transaction API follow its own documentation.
-rw-r--r--includes/database/database.inc27
-rw-r--r--modules/simpletest/tests/database_test.test4
2 files changed, 24 insertions, 7 deletions
diff --git a/includes/database/database.inc b/includes/database/database.inc
index b45711f15..326e1c05c 100644
--- a/includes/database/database.inc
+++ b/includes/database/database.inc
@@ -225,7 +225,7 @@ abstract class DatabaseConnection extends PDO {
*
* @var boolean
*/
- protected $willRollBack;
+ protected $willRollback;
/**
* 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.
*/
- public function rollBack() {
+ public function rollback() {
if ($this->transactionLayers == 0) {
throw new NoActiveTransactionException();
}
- $this->willRollBack = TRUE;
+ $this->willRollback = TRUE;
}
/**
@@ -867,12 +867,12 @@ abstract class DatabaseConnection extends PDO {
* @return
* TRUE if the transaction will roll back, FALSE otherwise.
*/
- public function willRollBack() {
+ public function willRollback() {
if ($this->transactionLayers == 0) {
throw new NoActiveTransactionException();
}
- return $this->willRollBack;
+ return $this->willRollback;
}
/**
@@ -1448,6 +1448,23 @@ class DatabaseTransaction {
$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();
+ }
+
}
/**
diff --git a/modules/simpletest/tests/database_test.test b/modules/simpletest/tests/database_test.test
index 3d6a4ebce..51b110db9 100644
--- a/modules/simpletest/tests/database_test.test
+++ b/modules/simpletest/tests/database_test.test
@@ -2624,8 +2624,8 @@ class DatabaseTransactionTestCase extends DatabaseTestCase {
if ($rollback) {
// Roll back the transaction, if requested.
// This rollback should propagate to the the outer transaction, if present.
- $connection->rollBack();
- $this->assertTrue($connection->willRollBack(), t('Transaction is scheduled to roll back after calling rollBack().'));
+ $txn->rollback();
+ $this->assertTrue($txn->willRollback(), t('Transaction is scheduled to roll back after calling rollback().'));
}
}