- 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