You are here

public function DatabaseTransaction::__construct in Drupal 7

File

includes/database/database.inc, line 1994
Core systems for the database layer.

Class

DatabaseTransaction
A wrapper class for creating and managing database transactions.

Code

public function __construct(DatabaseConnection $connection, $name = NULL) {
  $this->connection = $connection;

  // If there is no transaction depth, then no transaction has started. Name
  // the transaction 'drupal_transaction'.
  if (!($depth = $connection
    ->transactionDepth())) {
    $this->name = 'drupal_transaction';
  }
  elseif (!$name) {
    $this->name = 'savepoint_' . $depth;
  }
  else {
    $this->name = $name;
  }
  $this->connection
    ->pushTransaction($this->name);
}