1 database.inc | public DatabaseTransaction::__construct(DatabaseConnection $connection, $name = NULL) |
File
- core/
includes/ database/ database.inc, line 2000 - 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 'backdrop_transaction'.
if (!$depth = $connection->transactionDepth()) {
$this->name = 'backdrop_transaction';
}
// Within transactions, savepoints are used. Each savepoint requires a
// name. So if no name is present we need to create one.
elseif (!$name) {
$this->name = 'savepoint_' . $depth;
}
else {
$this->name = $name;
}
$this->connection->pushTransaction($this->name);
}