public function rollbackTransaction()
{
if (!$this->inTransaction) {
throw new RepositoryException('Rollback transaction failed: no transaction open');
}
$this->assertLoggedIn();
try {
$this->inTransaction = false;
$this->getConnection()->rollback();
if ($this->originalNamespaces) {
// reset namespaces
$this->setNamespaces($this->originalNamespaces);
$this->originalNamespaces = null;
}
} catch (\Exception $e) {
throw new RepositoryException('Rollback transaction failed: ' . $e->getMessage(), 0, $e);
}
}